python输出字符串带引号 python输出字符串不带引号_字符串


字符串是由0个或多个字符组成的有序字符序列。

今天的学习的内容如下:


python输出字符串带引号 python输出字符串不带引号_python输出字符串带引号_02


字符串类型的表示,字符串是字符的序列表示,可以由一对单引号'x'或双引号"x"或三引号'''x'''构成,使用总结如下表:


python输出字符串带引号 python输出字符串不带引号_转义符_03


我们输入一段代码来展示:


print('1单行,两边可以是单或双引号')
print("2单行,两边可以是单或双引号")
print('3单行,中间有"单或双"引号')
print("4单行,中间有'单或双'引号")
print('''5单行,中间有'单引号',"双引"号''')
print('''6多行输入,
字符串用三"引号"表示''')
'''7字符串没有被使用,
三引号还可以当做多行注释使用'''


输出结果如下:


python输出字符串带引号 python输出字符串不带引号_转义符_04


最后一句为什么没有被输出呢?

是因为最后一句的字符串没有被定义,当做注释使用。以上是官方给的规定,我们再试试单引号或双引号可不可以换行呢:

输入代码测试:


print('1多行输入
      可以是单或双引号')
print("2多行输入
   试试可不可以")


python输出字符串带引号 python输出字符串不带引号_c++转换成字符串不显示引号_05


输出结果是错误,看来不行,换种方式再试一次,代码如下:


print('1多行输入'
      '可以是单或双引号')
print("2多行输入"
      "试试可不可以")


输出结果如下:


python输出字符串带引号 python输出字符串不带引号_转义符_06


代码输出结果可以看出,使用单双引号可以实现分行写,一行前后必须有单或双引号,输出结果仍然是单行显示。

索引功能,索引字符串的序列表示,它还包括两种序号体系,正向递增序号和方向递减序号。


python输出字符串带引号 python输出字符串不带引号_字符串_07


我们之间已经学过这方面的知识,现在概述一下:

字符串采用[M:N]格式,表示字符串中从N到M(不包括M)的子字符串,其中,N和M为字符串的索引序号,可以混合使用正向递增序号和反向递减序号,如果表示中M或N索引缺失,则表示字符串把开始或结束索引值设为默认值。通常索引与切片混合使用。

索引:返回字符串种单个字符,<字符串>[M]

切片:返回字符串中一段字符子串,<字符串>[M:N]

索引和切片的高段位玩法如下:

<字符串>[M:N] #M到N-1的索引,M缺失表示至开头,N缺失表示至结尾

<字符串>[M:N:K] #根据步长K对字符串切片,[::-1]字符串逆序排列


python输出字符串带引号 python输出字符串不带引号_双引号_08


另外,字符串还有个特殊字符,叫转义符

转义符表达特定字符的本意(格式化控制符),可以形成一些组合,表达一些不可打印的含义。

(在行尾时)

续行符

n

换行

反斜杠符号

v

纵向制表符

'

单引号

t

横向制表符

"

双引号

r

回车

a

响铃

f

换页

b

退格(Backspace)

oyy

八进制数,y 代表 0~7 的字符,例如:012 代表换行。

e

转义

xyy

十六进制数,以 x 开头,yy代表的字符,例如:x0a代表换行

000


other

其它的字符以普通格式输出

(在行尾时)

续行符

n

换行

反斜杠符号

v

纵向制表符

'

单引号

t

横向制表符

"

双引号

r

回车

a

响铃

f

换页

b

退格(Backspace)

oyy

八进制数,y 代表 0~7 的字符,例如:012 代表换行。

e

转义

xyy

十六进制数,以 x 开头,yy代表的字符,例如:x0a代表换行

000


other

其它的字符以普通格式输出

编写代码如下:


print("1使用转义符"")
print("2使用转义符空格n换行了")
print("3使用转义符空000")


python输出字符串带引号 python输出字符串不带引号_python输出字符串带引号_09


字符串操作符,内容简单,但是在编程中会经常遇到,格式如下:


python输出字符串带引号 python输出字符串不带引号_转义符_10


我们编写个程序,在动物园中,每个动物有自己的编号。假设输入数字1-6,自动输出对应的动物(字符串)名称,代码如下:


zoo="小鸭子小狐狸大老虎大狮子小青蛙小猴子"  #字符串
num=eval(input("输入动物编号"))   #输入数字并去掉双引号
max=(num-1)*3          #输入的数字乘以3,确定对应动物最大的字符串位置
print(zoo[max:max+3])   #输出动物园的动物名称


python输出字符串带引号 python输出字符串不带引号_python输出字符串带引号_11


字符串处理函数的学习。Python解释器提供了一些内置函数,共5个,如下图所示:


python输出字符串带引号 python输出字符串不带引号_转义符_12


这些只是需要记忆,没有复杂的要求,举例如下:


print(len("一二三四五")) #计算字符串的元素个数
print(str(1234))  #将1234(任意类型)转换成字符串
print(chr(1004))  #将Unicode中的1004对应的字符输出
print(ord("真"))  #将字符串对应的Unicode值输出
print(hex(72))  #将十进制72转换成十六进制
print(oct(10))  #将十进制10转换成八进制


输出的结果如下图所示:


python输出字符串带引号 python输出字符串不带引号_转义符_13


小知识:每个字符在计算机中可以表示一个数字,叫做编码,通常用的是ASCII码,主要用在英文字符,很多国家的字符都没有收录,这时提出了建立Unicode码,涵盖了几乎所有的字符。

有趣的字符串处理函数学习完毕,进入字符串处理方法的学习中,在python中,所有数据类型都封装成一个类,字符串也是一个类,在面向对象中,称这类函数为“方法”,表达式为<a>.<b>(),内置方法有43个,现在把最最常用的展示出来,以后遇到其他的再学习(str代表字符串或变量)


python输出字符串带引号 python输出字符串不带引号_双引号_14


这些该怎么用呢?很简单,我们编写个小程序展示一下:


print("伟大的祖国".split())  #字符串输出为列表
print("伟大的祖国".center(15,'*'))
#字符串居中显示,定义为15个字符,不够的用*添加,
print("伟大的祖国".zfill(10))
#定义为10个字符,字符串不够,在之前以0添加
print("*".join("伟大的祖国")) #在每个字符串后加*


输出结果如下:


python输出字符串带引号 python输出字符串不带引号_字符串_15


format(),字符串格式化用于解决字符串和变量同时输出时的格式安排。格式如下:


python输出字符串带引号 python输出字符串不带引号_c++转换成字符串不显示引号_16


槽用{}表示,如果大括号中没有序号,则按照出现顺序排列。


python输出字符串带引号 python输出字符串不带引号_python输出字符串带引号_17


python输出字符串带引号 python输出字符串不带引号_转义符_18


python输出字符串带引号 python输出字符串不带引号_c++转换成字符串不显示引号_19


具体使用方法举例如下:


print('{} and {}'.format('hello','world'))  # 默认左对齐
print('{:10s} and {:>10s}'.format('hello','world'))  # 取10位左对齐,取10位右对齐
print('{:^10s} and {:^10s}'.format('hello','world'))  # 取10位中间对齐
print('{} is {:.2f}'.format(1.123,1.123))  # 取2位小数
print('{0} is {0:>10.2f}'.format(1.123))  # 取2位小数,右对齐,取10位


输出结果如下图:


python输出字符串带引号 python输出字符串不带引号_python输出字符串带引号_20