python中如何表示_新行在Python中是如何表示的?
我有一份特殊人物名单:specialCharList=['`','~','!','@','#','$','%','^',
'&','*','(',')','-','_','+','=',
'|','','{','}','[',']',';',':',
'"',',','.','','/','?',"'",'\\',' ']
我需要包括一些字符表示法,当用户按下enter按钮输入新行时。我试过'\n',但没用。有什么想法吗?在
下面是更多信息
对不起,我应该指定的。我在做一个基本的加密/解密应用程序。它的作用是将字符移到右边6个位置,然后输出。在
例如,abc将作为ghi输出
e、 输出为123克789
我也用特殊字符做了同样的事情。使用下面的列表查看它是如何工作的。在specialCharList=['`','~','!','@','#','$','%','^',
'&','*','(',')','-','_','+','=',
'|','','{','}','[',']',';',':',
'"',',','.','','/','?',"'",'\\',' ']
例如~!将输出为^&
当有人在文本框中输入文本、数字和特殊字符的组合并进行加密时,一切正常,但如果有人输入了一行新行(例如,按回车键),我会得到一个错误。在index=specialCharList.index(tbInput[i])
值错误:u'\n'不在列表中
完整代码如下。在import wx
import os
class mainForm(wx.Frame):
def __init__(self,parent,id):
wx.Frame.__init__(self,parent,id,'Encryption Tool v2',size=(270,300))
panel=wx.Panel(self)
#Setting up controls
wx.StaticText(panel,-1,'Enter Text Below',(10,10),(200,25))
self.tbInput=wx.TextCtrl(panel,-1,'',(10,30),(250,220),wx.TE_MULTILINE)
self.rdEncrypt=wx.RadioButton(panel,-1,'Encrypt',(10,250),(200,-1))
self.rdDecrypt=wx.RadioButton(panel,-1,'Decrypt',(10,270),(200,-1))
btnExecute=wx.Button(panel,-1,'Execute',(181,252),(80,-1))
btnExecute.Bind(wx.EVT_BUTTON,self.encryptionDecryption)
def encryptionDecryption(self,event):
tbInput=self.tbInput.GetValue()
rdEncrypt=self.rdEncrypt.GetValue()
rdDecrypt=self.rdDecrypt.GetValue()
if rdEncrypt==True and tbInput!='':
#copy encryption code below
encryptedStr=''
alphabet=['X','M','y','B','e','f','N','D','i','Q',
'k','u','Z','J','s','A','q','Y','E','P','S',
'v','w','a','U','z','p','d','C','h','o','F',
'G','H','I','n','K','W','b','g','O','t','j',
'R','l','T','c','V','L','x','r','m']
specialCharList=['`','~','!','@','#','$','%','^',
'&','*','(',')','-','_','+','=',
'|','','{','}','[',']',';',':',
'"',',','.','','/','?',"'",'\\',' ',]
for i in range(0,len(tbInput)):
if tbInput[i].isalpha():
index=alphabet.index(tbInput[i])
if index+6>len(alphabet)-1:
index=5+(index-(len(alphabet)-1))
encryptedStr+=alphabet[index]
else:
encryptedStr+=alphabet[index+6]
elif tbInput[i].isdigit():
if int(tbInput[i])+6>9:
encryptedStr+=str(-1+(int(tbInput[i])+6)-9)
else:
encryptedStr+=str(int(tbInput[i])+6)
else:
index=specialCharList.index(tbInput[i])
if index+6>len(specialCharList)-1:
index=5+(index-(len(specialCharList)-1))
encryptedStr+=specialCharList[index]
else:
encryptedStr+=specialCharList[index+6]
#print 'Encrypted Text: '+encryptedStr
#text file here
e=open('encryptedText.txt', 'w')
e.write(encryptedStr)
e.close()
if os.name == 'nt':
os.system('notepad ecryptedText.txt&')
elif os.name == 'posix':
os.system('gedit decryptedText.txt&')
os.system('gedit encryptedText.txt&')
elif rdDecrypt==True and tbInput!='':
#copy code for decryption below
decryptedStr=''
alphabet=['X','M','y','B','e','f','N','D','i','Q',
'k','u','Z','J','s','A','q','Y','E','P','S',
'v','w','a','U','z','p','d','C','h','o','F',
'G','H','I','n','K','W','b','g','O','t','j',
'R','l','T','c','V','L','x','r','m']
specialCharList=['`','~','!','@','#','$','%','^',
'&','*','(',')','-','_','+','=',
'|','','{','}','[',']',';',':',
'"',',','.','','/','?',"'",'\\',' ']
for i in range(0,len(tbInput)):
if tbInput[i].isalpha():
index=alphabet.index(tbInput[i])
if index-6>len(alphabet)-1:
index=5+(index-(len(alphabet)-1))
decryptedStr+=alphabet[index]
else:
decryptedStr+=alphabet[index-6]
elif tbInput[i].isdigit():
if int(tbInput[i])-6<0:
decryptedStr+=str(-1+(int(tbInput[i])-6)+11)
else:
decryptedStr+=str(int(tbInput[i])-6)
else:
index=specialCharList.index(tbInput[i])
if index-6>len(specialCharList)-1:
index=5+(index-(len(specialCharList)-1))
decryptedStr+=specialCharList[index]
else:
decryptedStr+=specialCharList[index-6]
#print 'Decrypted Text: '+decryptedStr
#text file here
d=open('decryptedText.txt', 'w')
d.write(decryptedStr)
d.close()
if os.name == 'nt':
os.system('notepad ecryptedText.txt&')
elif os.name == 'posix':
os.system('gedit decryptedText.txt&')
os.system('gedit encryptedText.txt&')
else:
message=wx.MessageDialog(None, 'Please enter text for encryption/decryption','No Text Found',wx.OK|wx.ICON_INFORMATION)
message.ShowModal()
message.Destroy()
if __name__=='__main__':
encryptionToolv2=wx.PySimpleApp()
frame=mainForm(parent=None,id=-1)
frame.Show()
encryptionToolv2.MainLoop()
#usrInput=raw_input('Please enter your text.\n> ')
#eOrD=raw_input('Do you want to encrypt or decrypt? (e or d)\n> ')
#if eOrD=='e' or eOrD=='E':
# encryption()
#elif eOrD=='d' or eOrD=='D':
# decryption()
python中如何表示_新行在Python中是如何表示的?相关推荐
- python交互式环境执行_如何在交互式环境中执行Python程序
如何在交互式环境中执行Python程序 相信接触过Python的小伙伴们都知道运行Python脚本程序的方式有多种,目前主要的方式有:交互式环境运行.命令行窗口运行.开发工具上运行等,其中在不同C d ...
- jupyter notebook和python有什么区别_如何在Jupyter Notebook中使用Python虚拟环境?
如何在使用Jupyter Notebook时,解决Python虚拟环境间的切换问题?本文一步步帮你拆解.希望你能够避免踩坑的痛苦,把更多的时间花在愉快的编程上. 痛点 Python目前有两个主版本并存 ...
- python docx 替换文字_在.docx文件-Python中查找和替换文本
我一直在寻找一种方法来查找和替换docx文件中的文本,但运气不好.我试过docx模块,但没能成功.最后,我使用zipfile模块并替换docx存档中的document.xml文件,得出了下面描述的方法 ...
- python表格中插入图片_运维(1)python操作excel插入图片
worksheet.insert_image() insert_image****(row, col, image[, options]) 在工作表单元格中插入一张图片. 参数: row(int) - ...
- c++中的引用和python中的引用_对比 C++ 和 Python,谈谈指针与引用
作者 | 樱雨楼 引言 指针(Pointer)是 C.C++ 以及 Java.Go 等语言的一个非常核心且重要的概念,而引用(Reference)是在指针的基础上构建出的一个同样重要的概念. 指针对于 ...
- python展示数据库视图_在Django的视图中使用数据库查询的方法
在视图中也有笨方法可以从数据库中获取数据. 很简单: 用现有的任何 Python 类库执行一条 SQL 查询并对结果进行一些处理. 在本例的视图中,我们使用了 MySQLdb 类库(可以从 http: ...
- 如何用python实现地图定位_基于 PyQt5 实现地图中定位相片拍摄位置
项目简介:本次项目主要学习了如何查找相片中的 Exif 信息,并通过 Exif 信息中的 GPS 数据在百度地图中进行定位标点,以确定相片的拍摄地点.本次实验的目的旨在通过包含 GPS 信息的相片进行 ...
- python的知识点运用_程序猿在Python编程中不得不使用的十二种基础知识
Python编程中常用的12种基础知识,其中肯定有你不会的! 人生苦短,我用Python 1.正则表达式替换 目标: 将字符串line中的 overview.gif 替换成其他字符串. 人生苦短,我用 ...
- python中数据读写_【循序渐进学Python——文件中数据的读写以及操作】
[循序渐进学Python--文件中数据的读写以及操作] [循序渐进学Python--文件中数据的读写以及操作] [循序渐进学Python--文件中数据的读写以及操作] 相信大家都想过自己有一天,可以用 ...
最新文章
- 重磅|我国科学家成功研制全球神经元规模最大的类脑计算机
- opencv2中访问像素的简单方法-自定义一个宏CV_MAT_ELEM2
- SpringBoot_入门-微服务简介
- LiveVideoStackCon深圳-AI无孔不入
- CTF-web文件上传漏洞
- 修改oracle的表空间文件scn,分享:bbed修改数据文件头推进scn与其他数据文件相同...
- js 快速集成开发:easyui 时间控件格式化
- 阿里腾讯百度们已经占据了全球互联网半壁江山!
- html video 笔记
- mysql回调地狱_es6 promise 所见
- android手机连不上wifi密码,修改wifi密码后手机连不上_修改wifi密码后手机不能上网-192路由网...
- 重装系统后,文件数据被格式化如何恢复?
- 微信小程序--石头剪刀布(小游戏)
- 自平衡自行车本质就是一个惯性飞轮,本质就是一样的!!!
- HDU and 蓝桥杯 完全背包练习题
- 计算机视觉PyTorch迁移学习 - (二)
- [HDU-2115] I Love This Game结构体排序典型应用
- asp木马中的cmd执行
- 小白必看,教你怎么设置引流脚本话术的教程
- datastage连接mysql库_DataStage8.7连接远程Oracle数据库
热门文章
- Java 基础系列:异常
- Linux基础命令---间歇执行命令watch
- python基础学习(四)if判断语句
- AX7 Form继承接口
- 多线程中对全局变量(整型类型)是否需要同步操作
- 《SQL Server企业级平台管理实践》读书笔记——SQL Server如何设置自动增长和自动收缩项...
- Python之网络爬虫(Xpath语法、Scrapy框架的认识)
- Navicate ---error 2003: can‘t connect to mysql server on ‘localhost‘(10061)“
- Java计算1除以3结果为0_关于java:Int division:为什么1/3 == 0的结果?
- 塞尔达传说gba_1986版塞尔达 回顾34年经典系列历代作品 满分最多系列游戏