python3 中的字符串(单引号、双引号、三引号)以及字符串与数字的运算

yipeiwu_com6年前Python基础

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
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
'重要的事重要的事重要的事'

但是字符串和字符串是不能相乘的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

对Python 简单串口收发GUI界面的实例详解

忙活了三个多小时,连学带做,总算是搞出来了一个具有基本功能的串口通信PC机的GUI界面,Tkinter在python中确实很好用,而且代码量确实也很少,不足的是Tkinter不自带com...

Python编写登陆接口的方法

Python编写登陆接口的方法

本文实例为大家分享了Python编写登陆接口的具体代码,供大家参考,具体内容如下 1.输入用户名密码; 2.认证成功后显示欢迎信息; 3.错误三次后,账号被锁定。  账号文件:...

Swift中的协议(protocol)学习教程

一、引言 协议约定了一些属性与方法,其作用类似Java中的抽象类,Swift中类型通过遵守协议来实现一些约定的属性和方法。Swift中的协议使用protocol关键字来声明。Swift中...

Python3 虚拟开发环境搭建过程(图文详解)

Python3 虚拟开发环境搭建过程(图文详解)

虚拟环境的搭建 为什么要使用虚拟环境# 1、使不同应用开发环境相互独立 2、环境升级不影响其他应用,也不会影响全局的python环境 3、防止出现包管理混乱及包版本冲突 windows平...

彻底理解Python中的yield关键字

彻底理解Python中的yield关键字

阅读别人的python源码时碰到了这个yield这个关键字,各种搜索终于搞懂了,在此做一下总结: 通常的for...in...循环中,in后面是一个数组,这个数组就是一个可迭代对象...