一、字符串拓展
1、字符串的三种定义方式
1)单引号定义法
例如:name = 'Seventeen'
2)双引号定义法
例如:name = "Seventeen"
3)三引号定义法
例如:name = """Seventeen"""
注意:三引号定义法和多行注释的写法一样,同样支持换行的操作。如果不使用变量接收的话,就可以作为多行注释使用;如果使用变量接收的话,就是字符串。
# 单引号定义法
name = 'Seventeen'
print(type(name))
# 双引号定义法
name1 = "Seventeen"
print(type(name1))
# 三引号定义法(支持换行操作)
name2 = """
I
am
Seventeen"""
print(type(name2))
"""
I
am
Seventeen"""
思考:如果我想定义的字符串的本身,是包含的单双引号自身的话,应该如何定义?
- 单引号定义法,可以内含双引号
- 双引号定义法,可以内含单引号
- 可以使用转移字符(\)来将引号解除效用,变成普通字符
2、字符串的拼接
如果有两个字符串(文本)字面量,可以将其拼接成一个字符串,通过 + 号即可完成,如:
print("我的名字是:" + "Seventeen")
输出结果是: 我的名字是:Seventeen
不过一般使用,字面量和变量或变量和变量之间会使用拼接,如:
name = Seventeen
print("我的名字是:" + name +",我是一名学生")
输出结果是:我的名字是:Seventeen,我是一名学生
注意:无法和非字符串类型进行拼接
3、字符串的格式化
1)格式化的方法一:
name = "Seventeen"
message = "我是:%s" % name
print(message)
其中的,%s
- % 表示:我要占位
- s 表示:将变量变成字符串放入占位的地方
name = "Seventeen"
age = 20
message = "我是%s,我的年龄是%s" % (name,age)
print(message)
注意:多个变量占位,变量要用括号括起来,并按照占位的顺序填入
在Python中,支持非常多的数据占位,最常用的是以下的三种:
格式符号 | 转化 |
%s | 将内容转换为字符串,放入占位位置 |
%d | 将内容转换为整数,放入占位位置 |
%f | 将内容转换成浮点型,放入占位位置 |
2)格式化的方法二: (写法更加的快速)
语法:f"内容{变量}"
补:f:format
name = "Seventeen"
age = 20
print(f"我是{name},我的年龄是{age}")
注意:这种方法不限类型,不做精度的控制,原样输出。
3)表达式的格式化:
print("3 * 3的结果是:%d" % (3*3))
print(f"3 * 3的结果是:{3*3}")
print("字符串Seventeen的类型是:%s" % type('Seventeen'))
这种方法无需使用变量进行数据的存储,可以直接格式化表达式,简化代码。
4、格式化的精度控制
我们可以使用 "m.n" 来控制数据的宽度和精度;
- m:控制宽度,要求是数字(一般很少使用)。当设置的宽度小于数字自身,不生效。
- .n:控制小数点精度,要求是数字,会进行小数的四舍五入。
实例:
- %5d:表示其宽度为5,如果是数字17,就会变成:[空格][空格][空格]17,用空格补足宽度。
- %.2f:表示不限制宽度,精度为2。如果是17.346,则会变成17.35
- %5.2f:表示宽度为5,精度为2,小数点和小数部分也算入宽度的计算。如果是17.346,就会变成:[空格][空格]17.35
num1 = 17
num2 = 17.346
print("数字17的宽度限制是5,结果:%5d" % num1)
print("数字17的宽度限制是1,结果:%1d" % num1)
print("数字17.346的宽度限制是7,小数精度是2,结果:%7.2f" % num2)
print("数字17.346不限制宽度,小数精度是2,结果:%.2f" % num2)
二、数据的输入
1、input语句(函数)
语法:使用input()语句从键盘获取输入,在使用一个变量接收(存储)input语句获取的键盘输入数据。
print("请告诉我你是谁")
name = input()
print("你好!%s" % name)
input()语句其实可以在要求使用者输入内容前,输出提示内容:input(提示内容)
name = input("请告诉我你是谁")
print("你好!%s" % name)
注意:使用input()语句,无论你输入的是什么,一律当成字符串
age = input("请告诉我你的年龄")
print("你的年龄是:",type(age))
若想将类型转化为数字的话,可以使用数据类型转换
# 输入数字类型
age = input("请告诉我你的年龄")
# 数据类型转换
age = int(age)
print("你的年龄是:",type(age))