2024-01-05 13:00:15 | 我爱编程网
本文以txt 文本为例,只是介绍ANSI,Unicode,UTF-8 三种编码的文件的读写过程,对于编码不做深究了
一、用记事本另存为时,可以选择保存文本使用的的几种编码模式,分别为:
ANSI:默认保存的编码格式,采用本地操作系统默认的内码,简体中文一般为GB2312。
Unicode:UTF-16的小端字节序,加上BOM签名:0xFFFE。
Unicode bigendian:Unicode编码:UTF-16的大端字节序,加上BOM签名:0xFEFF。
UTF-8:编码格式是:UTF-8,其BOM为0xEF BB BF(UTF-8不区分字节序,这个BOM仅标志UTF-8编码)
Python对于读取的txt文件,最好在读取的时候进行decode成unicode编码,
def read_out(self): with codecs.open(self.filename, 'r+') as get: return get.read().decode('gbk')
然后再写入的时候进行encode成对应想要的编码类型,这样可以保证源文件的编码方式不会改变,且中文不会乱码
整个代码过程保持使用unicode编码方式利用try…except 来进行编码判别具体使用了那种编码方式
f.write(self.filename.encode('gbk'))
二、对于raw_input 通过键盘输入的文字,通过sys模块中的stdin.encodeing来进行解码
content = raw_input().decode(sys.stdin.encoding)
type(content) 是unicode
暂时这么多
编辑要运行的脚本,按
Python安装好以后,在开始菜单会看到一个idle工具(一个增强的交互命令行解释器窗口)以及一个自带的编辑器。
在任意目录新建一个.py文件或者保存的时候以.py结尾,用记事本、Python自带的编辑器或者其他编辑器如Sublime Text或者NotePad++都行。
如果用的是idle,直接按F5就能在Python自带的命令行查看结果。
如果是用记事本或者其他编辑器,快捷键win+R调出运行目录,输入cmd,然后在命令行里进入这个目录,输入python [filename].py或者[filename].py就可以看到运行结果了。
我爱编程网(https://www.52biancheng.com)小编还为大家带来python用什么文本编辑器的相关内容。
Python的交互式命令行写程序,好处是一下就能得到结果,坏处是没法保存,下次还想运行的时候,还得再敲一遍。
所以,实际开发的时候,我们总是使用一个文本编辑器来写代码,写完了,保存为一个文件,这样,程序就可以反复运行了。
那么问题来了:文本编辑器到底哪家强?(推荐学习:Python视频教程)
推荐两款文本编辑器:
Sublime Text我爱编程网
是一个代码编辑器(Sublime Text 2是收费软件,但可以无限期试用),也是HTML和散文先进的文本编辑器。Sublime Text是由程序员Jon Skinner于2008年1月份所开发出来,它最初被设计为一个具有丰富扩展功能的Vim。
Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。
Notepad++
是 Windows操作系统下的一套文本编辑器(软件版权许可证: GPL),有完整的中文化接口及支持多国语言编写的功能(UTF8技术)。
Notepad++功能比 Windows 中的 Notepad(记事本)强大,除了可以用来制作一般的纯文字说明文件,也十分适合编写计算机程序代码。Notepad++ 不仅有语法高亮度显示,也有语法折叠功能,并且支持宏以及扩充基本功能的外挂模组。
Notepad++是免费软件,可以免费使用,自带中文,支持众多计算机程序语言。
内置支持多达27种语法高亮度显示(包括各种常见的源代码、脚本,能够很好地支持 .info 文件查看),还支持自定义语言;
可自动检测文件类型,根据关键字显示节点,节点可自由折叠/打开,还可显示缩进引导线,代码显示得很有层次感;
可打开双窗口,在分窗口中又可打开多个子窗口,显示比例;
提供了一些有用工具,如 邻行互换位置、宏功能,等??
可显示选中的文本的字节数 (而不是一般编辑器所显示的字数,这在某些情况下,比如软件本地化很方便);
正则匹配字符串及批量替换;
强大的插件机制,扩展了编辑能力,如Zen Coding。
更多Python相关技术文章,请访问Python教程栏目进行学习!
2025-02-01 20:24:39
2024-01-05 14:11:24
2025-02-10 15:19:48
2025-01-28 17:58:32
2025-02-12 03:21:37
2024-11-22 05:08:01