字符串
字符串用\’\’或者\”\”括起来,如果字符串内部有‘或者\”,需要使用\\进行转义
>>> print \'I\\\'m ok.\' I\'m ok.
转义字符\\可以转义很多字符,比如\\n表示换行,\\t表示制表符,字符\\本身也要转义,所以\\\\表示的字符就是\\。当然如果不需要转义,可以使用r\’\’:
>>> print \'\\\\\\t\\\\\' \\ \\ >>> print r\'\\\\\\t\\\\\' \\\\\\t\\\\
如果字符串内部有很多换行,用\\n写在一行里不好阅读,为了简化,Python允许用\’\’\’…\’\’\’的格式表示多行内容:
>>> print \'\'\'line1 ... line2 ... line3\'\'\' line1 line2 line3
如果写成程序,就是:
print \'\'\'line1 line2 line3\'\'\'
可能出现的问题
中文编码问题
# coding = utf-8
结果报错:
SyntaxError: Non-ASCII character ‘/xe6\'
所以最后改成了
# coding=utf-8
唉….
Unicode编码问题
Python 2.7.6 (default, Mar 22 2014, 22:59:56) [GCC 4.8.2] on linux2 Type \"help\", \"copyright\", \"credits\" or \"license\" for more information. >>> len(\'中文\') 6 >>> len(u\'中文\') 2 >>>
注意: 这个问题是由python编码导致的,详细的编码问题详见字符串和编码,但是在python 3.x中这个编码问题就不存在了:
Python 3.4.0 (default, Jun 19 2015, 14:20:21) [GCC 4.8.2] on linux Type \"help\", \"copyright\", \"credits\" or \"license\" for more information. >>> len(\'中文\') 2 >>> len(u\'中文\') 2 >>>
输出
>>> print \'hello, world\' hello, world >>> print \'The quick brown fox\', \'jumps over\', \'the lazy dog\' The quick brown fox jumps over the lazy dog >>> print \'100 + 200 =\', 100 + 200 100 + 200 = 300
输入
>>> name = raw_input() Michael >>> name \'Michael\' >>> print name Michael >>> name = raw_input(\'please enter your name: \') please enter your name:
注意: raw_input返回的永远是字符串,也就是说你输入一个int型,返回的是一个数字字符串,你需要进行转换:
>>> number = raw_input(\"输入一个整数:\") 输入一个整数:123 >>> number \'123\' >>> number = int(raw_input(\"输入一个整数:\")) 输入一个整数:123 >>> number 123