3.6 Python中raw字符串与多行字符串
Python中raw字符串与多行字符串
如果一个字符串包含很多需要转义的字符,对每一个字符都进行转义会很麻烦。为了避免这种情况,我们
可以在字符串前面加个前缀 r ,表示这是一个 raw 字符串,里面的字符就不需要转义了。例如:
r’(~_~)/ (~_~)/’
但是r’…’表示法不能表示多行字符串,也不能表示包含’和 “的字符串(为什么?)
如果要表示多行字符串,可以用”’…”’表示:
”’Line 1
Line 2
Line 3”’
上面这个字符串的表示方法和下面的是完全一样的:
‘Line 1\nLine 2\nLine 3’
还可以在多行字符串前面添加 r ,把这个多行字符串也变成一个raw字符串:
r”’Python is created by “Guido”.
It is free and easy to learn.
Let’s start learn Python in imooc!”’
3.7 Python中Unicode字符串
Python在后来添加了对Unicode的支持,以Unicode表示的字符串用u’…’表示,比如:
print u’中文’
中文
注意: 不加 u ,中文就不能正常显示。
Unicode字符串除了多了一个 u 之外,与普通字符串没啥区别,转义字符和多行表示法仍然有效:
转义:
u’中文\n日文\n韩文’
多行:
u”’第一行
第二行”’
raw+多行:
ur”’Python的Unicode字符串支持”中文”,
“日文”,
“韩文”等多种语言”’
如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在
第一行添加注释
-- coding: utf-8 --
目的是告诉Python解释器,用UTF-8编码读取源代码。然后用Notepad++ 另存为… 并选择UTF-8格式保存
。
3.8 Python中整数和浮点数
Python的整数运算结果仍然是整数,浮点数运算结果仍然是浮点数.
整数和浮点数混合运算的结果就变成浮点数了.
Python提供了一个求余的运算 % 可以计算余数.