上集回顾:
- 整数(int)和浮点数(float)
- 加(+)、减(-)、乘(*)、除(/)、取整(//)、取余(%)
- 变量(存储值的存钱罐)
- 赋值"=" (把后面的值赋值给前面的变量)
小P进化之旅再次启程,上集进化了数学,这次该进化语文啦,也就是本集的主角:字符串!
一、初识字符串
字符串就是用单引号('……')或双引号("……")包含起来的一串字符,可以是字母、数字和符号,或者是汉字和其他语言符号。比如:
>>> "Hello, world!"
'Hello, world!'
>>> "you're right!"
"you're right!"
>>> 'you\'re right!' #'\'反斜杠进行转义
"you're right!"
>>> '子曰:"学而时习之"'
'子曰:"学而时习之"'
这些都是合法的字符串,配合print()函数小P就能输出各种各样的语言支持了。
>>> print("My name is P")
My name is P
>>> print("What's your \name?")
What's your
ame?
咦,奇怪的事情又发生了!我在name前面多打了一个"",结果""没有打印出来,"n"也不见了,还发生了换行。原来""就是转义符号,他能把普通字符转成有特殊意义的符号。比如“\n”就是换行的意思。如果不想转义可以在引号前面加个字母'r':
>>> print(r"What's your \name?")
What's your \name?
如果字符串特别长,有好几行该如何使用print输出呢?是不是多用几个引号就行了?小P果然聪明!Python使用三引号:"""...""" 或 '''...'''来引用多行字符串,字符串行尾会自动加上回车换行,如果不需要回车换行,在行尾添加 \ 即可。
>>> print(""" #结尾不加‘\’会在开头多一个空行
... 春眠不觉晓,
... 处处闻啼鸟。
... 夜来风雨声,
... 花落知多少。""")
春眠不觉晓,
处处闻啼鸟。
夜来风雨声,
花落知多少。
>>> print('''\ #结尾加‘\’开头没有空行
... 墙角数枝梅,
... 凌寒独自开。
... 遥知不是雪,
... 为有暗香来。''')
墙角数枝梅,
凌寒独自开。
遥知不是雪,
为有暗香来。
二、字符串拼接
有时候字符串存储在多个变量里,又想拼接成一个字符串进行打印,该怎么实现呢?很简单,像做加法一样把他们加在一起就行了!
>>> a = "小P"
>>> b = "您好!"
>>> print(a + b)
小P您好!
>>> print(a + ': ' + b)
小P: 您好!
>>> print(a + '超级'*3 + "牛!") #'*'乘号能重复一个字符串多次
小P超级超级超级牛!
如果有个变量age=3,代表小P的年龄,想打印小P今年age岁了,可以直接用加法吗?试验一下:
>>> name = "小P"
>>> age = 3
>>> print(name + age + "岁啦!")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: must be str, not int
哟吼!出错了!原来数字不能和字符串相加,数字只能和数字相加,字符串也只能和字符串相加!所以想要把数字和字符串拼接,需要把数字转换成字符串才行。比如:
>>> print(name + "今年" + str(age) + "岁啦!") # str()函数能把数字转成字符串
小P今年3岁啦!
>>> print(name + "今年", str(age), "岁啦!") #或者不用加号
小P今年 3 岁啦!
三、大小写转换
直接示例:
>>> a = "hello WorlD!"
>>> print(a)
hello WorlD!
>>> print(a.upper()) #全大写
HELLO WORLD!
>>> print(a.lower()) #全小写
hello world!
>>> print(a.title()) #每个单词首字母大写
Hello World!
>>> print(a.capitalize()) #首字母大写
Hello world!
本集技能总结:
- 初识字符串
- 字符串拼接
- 大小写转换
下集见!
网友评论