简单讲解python中的字符串与字符串的输入输出

字符串
字符串用”或者””括起来,如果字符串内部有‘或者”,需要使用\进行转义

>>> 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

Posted in 未分类

发表评论