python3中的字符串(单引号、双引号、三引号)以及字
符串与数字的运算
python3中的字符串是⼀种常见的数据类型。
字符串有多种表现形式:单引号、双引号和三引号,且这些字符串的表现形式(单、双、三)都必须是成对出现的。
单、双引号是英⽂的:‘'和"",三引号则是三个单引号或者三个双引号都可以:""" """或者''' ''',在python中打出来时没有顺序之分(其实也看不出来顺序...),在⼀对引号的中间打上东西就是字符串,例如:
#单引号#
'123' '⼩明' 'xyz'
#双引号#
"123" "⼩明" "xyz"
关于单引号:
单引号⽐较特殊,因为在英⽂中很多语法是缩写的,⽐如:what is your name?和what's your name?,但是在python3中,如果是单引号字符串的话使⽤what's your name?就会出错。
因为python不会识别你的英⽂语法,但是会识别你的代码语法是否正确,如果是你直接写'what's your name?'python会认
为'what'是⼀个字符串,后⾯的s your name?'则是⼀个错误的字符串。
正确的做法是使⽤双引号。但是,单引号也可以实现把what's your name?作为字符串,实现⽅式为使⽤转义字符:\(是\不
是/,不要搞错⽅向),具体如下:
#双引号#
>>> "what's your name?"
"what's your name?"
#单引号加转义字符#
>>> 'what\'s your name?'
"what's your name?"
关于三引号:
三引号是可以换⾏写代码(有时候代码过长,换⾏会便于理解和阅读),直接打三个单引号或者双引号(必须⼀对,不能是开始单引号,结尾是双引号这种的),换⾏输出,在以三引号结尾就可。
但是这样的输出结果会是⼀⾏字符带\n,最后出来的这个结果⾥的\n是代表回车,因为你在换⾏输⼊是敲了回车,虽然敲回车你是看不见的,但是确实是输⼊了⼀个字符,所以⽤\n来表⽰。
另外,单双三引号的字符串也可以实现换⾏,只需要在换⾏的地⽅直接加\即可换⾏输⼊。
关于转义字符,还有⼀点:只需使⽤print+转义字符\n,这样输出的结果就会分成⼏⾏,并且不会显⽰\n。但是代码还是⼀⾏。如下:
#print+转义字符\n,输出结果换⾏#
>>> print ('123\n456\n789')
123
456
789
>>> print ("123\n456\n789")
123
456
789
>>> print ('''123\n456\n789''')
123
456
789
>>> print ("""123\n456\n789""")
123
456
789
#\换⾏(单双三引号都⼀样,所以就只展⽰⼀个单引号)#
>>>'123\
123\
123'
'123123123'
#三引号换⾏#
>>> '''
123
456
789
'''
'\n123\n456\n789'
>>> """123
字符串截取右3位
456
789"""
'123\n456\n789'
#还有⼀点,三引号和加\的单双引号,不论引号是在哪⾥都可以,只要包含字符就可以#
要注意的是python中,字符串的123和数字数123不⼀样,如果把数字的123+456,就会得出结果579。
如果把字符串的123加字符串的456,则会将两个字符串进⾏合并。
但如果把字符串的123+数字456,则会报错,如下所⽰:
#数字加数字#
>>> 123+456
579
#字符加字符#
>>> '123'+'456'
'123456'
#字符与数字相加#
>>> '123'+456
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
'123'+456
TypeError: can only concatenate str (not "int") to str
数字虽然不能和字符串相加,但他们可以相乘啊!字符串*⼏就代表把这个字符串总共输出⼏遍。如下所⽰:#在python中*代表乘法,/代表保留⼩数点的除法,//代表只保留整数的除法,+代表加法,——代表减法#
>>> '123'*3
'123123123'
>>> '重要的事'*3
'重要的事重要的事重要的事'
但是字符串和字符串是不能相乘的。
以上就是本⽂的全部内容,希望对⼤家的学习有所帮助,也希望⼤家多多⽀持。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。