python3.x中可以使用中文作为变量名

Python013

python3.x中可以使用中文作为变量名,第1张

python3.x中可以使用中文作为变量名。python3.x中可以使用中文作为变量名,不光是Python3支持中文命名哦,Python增强提案PEP3131--SupportingNon-ASCIIIdentifiers阐述了支持非ASCII码命名标识符的缘由.Rationale(依据)一节开篇明义,指出很多Python开发者并不熟悉英语,更希望用母语对类/方法进行命名,而不是用经常有误的英文翻译.对使用同样母语的开发者来说,用母语命名的标识符可以提高代码清晰度和可维护性。

(一)

爬虫时经常遇到'/u'开头的unicode编码的字符串,这时通过decode()来解决.

但偶尔也会遇到以‘’ 或者‘’开头的字符串, 这是HTML、XML 等 SGML 类语言的转义序列(escape sequence)。它们不是「编码」。

如果以‘‘ 开头,后接十进制数字,

如果以‘’开头,后接十六进制数字。

在python中的解决方法是:

importhtml

a ='外观'

print(html.unescape(a))

# 输出:外观

希望对你有用

(二)

Python中escape和unescape

Python处理HTML转义字符

在抓网页数据经常遇到例如>或者 这种HTML转义符,抓到字符串里很是烦人。

比方说一个从网页中抓到的字符串

p ='<abc>'

用Python可以这样处理:

import html

p ='<abc>'txt= html.unescape(p)print(txt)

#这样就得到了txt= ''

如果还想转回去,可以这样:

import cgi

q = cgi.escape(html)print(q)

       #这样又回到了 html = '<abc&gt'

cc = "\u8c46\u7c95"

c = u"\u8c46\u7c95"

它们是两个不同的字符串,print出来后可以看到cc是\\u8c46\\u7c95,也就是说这是12个英文字符串,而不是两个汉字

如果想要得到"豆粕"的字符串,可以这样

ccc = "豆粕"

d = ccc.decode("gbk")

这时cc == d