Python养成记

2、字符串

2022-03-15  本文已影响0人  魔方宫殿

上集回顾:

  1. 整数(int)和浮点数(float)
  2. 加(+)、减(-)、乘(*)、除(/)、取整(//)、取余(%)
  3. 变量(存储值的存钱罐)
  4. 赋值"=" (把后面的值赋值给前面的变量)

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

本集技能总结:

  1. 初识字符串
  2. 字符串拼接
  3. 大小写转换

下集见!

上一篇 下一篇

猜你喜欢

热点阅读