如何正常使用Python语言

开发 后端
在某个C++应用程序中,我们用一组插件来实现一些具有统一接口的功能,我们使用Python来代替动态链接库形式的插件。

很多用户在使用Python时,都遇到种种的问题,本人觉得将Python列为黑客应当学习的四种编程语言之一,并建议人们从Python开始学习编程,下面文章进行对Python语言进行学习了解。

Python中有两种默认的字符串:str和unicode。在使用Python中一定要注意区分“Unicode字符串”和“unicode对象”的区别。后面所有的“unicode字符串”指的都是python里的“unicode对象”。

事实上在Python中并没有“Unicode字符串”这样的东西,只有“unicode”对象。一个传统意义上的unicode字符串完全可以用str对象表示。只是这时候它仅仅是一个字节流,除非解码为unicode对象,没有任何实际的意义。

可以看出在控制台,中文字符的编码是GBK而不是UTF-16。将字符串s(GBK编码)使用decode进行解码后,可以得到同等的unicode对象。
注意:可以在控制台打印ss并不代表它可以直接被序列化,比如:

向文件直接输出ss会抛出同样的异常。在处理unicode中文字符串的时候,必须首先对它调用encode函数,转换成其它编码输出。这一点对各个环境都一样。总结:在使用Python中,“str”对象就是一个字节数组。

至于里面的内容是不是一个合法的字符串,以及这个字符串采用什么编码(gbk, utf-8, unicode)都不重要。这些内容需要用户自己记录和判断。这些的限制也同样适用于“unicode”对象。要记住“unicode”对象中的内容可绝对不一定就是合法的unicode字符串。

我们很快就会看到这种情况。总结:在windows的控制台上,支持gbk编码的str对象和unicode编码的unicode对象。在windows下的IDLE中,运行效果和windows控制台不完全一致:

可以看出,对于不使用“u”作标识的字符串,IDLE把其中的中文字符进行GBK编码。但是对于使用“u”的unicode字符串,IDLE居然一样是用了GBK编码,不同的是,这时候每一个字符都是unicode(对象)字符!!此时len(ss) = 4。

【编辑推荐】

  1. 有关Python系统文件进行介绍指导
  2. 如何正确的使用Python函数
  3. Python 构建工具进行详细介绍分析
  4. PythonAndroid浅析Python优势所在
  5. 如何使用Python模块解析配置文件?
责任编辑:chenqingxiang 来源: 人民邮电出版社
相关推荐

2017-09-28 16:18:55

语言PythonGo

2010-03-12 13:44:31

Python whil

2010-03-08 17:03:22

Python脚本

2020-11-12 18:57:14

摘要PythonNLP

2010-03-10 18:51:18

Python语言

2010-02-03 10:45:33

2010-03-11 19:16:32

Python语言

2015-10-29 09:40:10

2010-03-11 15:07:39

Python编程语言

2010-03-09 19:27:42

Python翻译脚本

2010-01-18 17:14:50

C++语言

2016-10-08 20:58:50

awkLinux编写脚本

2023-04-20 17:26:40

FreeDOSC 语言

2010-03-11 17:38:20

Python中文

2010-04-21 11:12:00

SQL PLUS

2010-03-10 16:52:00

Python 编程语言

2021-07-21 14:29:27

Python编程语言软件开发

2013-03-19 09:48:45

Office 2013

2014-04-09 09:32:24

Go并发

2011-08-25 09:55:27

点赞
收藏

51CTO技术栈公众号