我正在制作一个使用密钥加密文件的程序。 它只能加密数字,字母,空格和一些符号。 等
This is text >>> h5D#I2%%&12s
我的程序也可以加密文件。 (至少我正在努力) 如果文件包含这样的字符怎么办? - uún‰3«°Ø以及NULL,CAN或SOH字符。
我有一个想法:我想留下这些和所有其他非ascii字符未加密。但我不知道Python是否可以使用它们。
P.S。这是项目的链接:(并且它未完成,没有工作) https://www.dropbox.com/sh/lq8j4vmci5c2vmh/AADeSTPVYeV13z5HRHp-NlWPa?dl=0
答案 0 :(得分:3)
Python字节字符串(Python 2中的类型str
,Python 3中的bytes
)只是不透明的字节序列,其中每个字节的整数值介于0到255之间。
如何处理这些字节取决于您。你可以将它们视为文本;打印文本,拆分空格,更改大小写等。或者您可以将其视为二进制数据,您的选择。如果您选择将内容视为文本,则是,某些字节是“不可打印的”,因为ASCII编解码器尚未为这些代码点分配可打印的字形。但是,Python并不关心。
以二进制模式('rb'
,'wb'
等)打开文件,以确保行分隔符(\n
或\r
或\r\n
字符)不会从平台本机格式翻译而来。