一、字符串格式化
- 占位符
"""
语法:带有格式占位符的字符串 % (数据1, 数据2, ...)
注意:a.数据的个数和占位符的位置和个数要对应 b.当只有一个数据的时候()可以省略
%s - 字符串占位符,可以对应任何能转换成字符串的数据
%d - 整数占位符, 可以对应任何数字数据(如果是浮点数,拼接的时候只拼接整数部分)
%f - 浮点数占位符,%.Nf(保留N位小数), 可以对应任何数字数据
%c - 字符占位符, 可以对应任何字符或者字符编码值
"""
# r/R语法:可以在字符串的最前面加r或者R,来让字符串中所有的转义字符的功能消失
-
f-string
1){提供数据的表达式}
2)添加参数:{提供数据的表达式:参数}
"""
常用参数:
a.参数:.Nf - 保留N位小数
b.参数: , - 用逗号将数据三位三位分开
c.参数: ,.Nf - 使用逗号的同时保留N位小数
d.参数: .N% - 将小数转换成百分比,百分数保留N位小数
e.参数: X>N或者X<N - X是填充字符(如果没有X表示用空格填充),N是长度。> - 填前面; < - 填后面
"""
二、字典推导式
"""
{键值对 for 变量 in 序列}
{键值对 for 变量 in 序列 if 条件语句}
dict(有且只有两个元素的小序列 for x in 序列)
dict(有且只有两个元素的小序列 for x in 序列 if 条件语句)
"""
三、函数
-
函数的概率:函数就是实现某一功能代码的封装。函数有系统函数和自定义函数(程序员自己命名的函数)
-
定义函数
"""
1)语法:
def 函数名(形参列表):
函数说明文档
函数体
2)说明
def - 关键字;固定写法
函数名 - 由程序员自己命名
要求:是标识符;不能是关键字
规范:见名知义(根据函数名大概知道函数的功能是什么);字母都小写,多个单词用下划线隔开;不使用系统函数名、类名或者模块名
(): - 固定写法
形参列表 - 以 '变量名1, 变量名2, 变量名3, ...' 的形式存在,其中每一个变量就是一个形参。
形参可以有多个,也可以一个都没有。
形参的作用:将函数外部的数据传递到函数的内部。
初学者怎么确定函数的形参:看实现函数的功能需不需要额外的数据,需要几个。
函数说明文档 - 本质就是多行注释
函数体 - 和def保持一个缩进的一条或者多条语句(至少一条语句);
函数体就是现实函数功能的代码段
"""
- 函数的调用
"""
定义函数的时候不会执行函数体,调用函数的时候才会执行函数体
语法:
函数名(实参列表)
说明:
函数名 - 需要哪个函数的功能就写哪个函数的名字。必须是已经定义好的函数的函数名
() - 固定写法
实参列表 - 实参就是通过形参真正传递到函数内部的数据。
以 '数据1, 数据2, 数据3,...' 的形式存在。
函数调用过程:
第一步:回到函数定义的位置, 传参(用实参给形参赋值)
第二步:执行函数体
第三步:确定函数返回值
第四步:回到函数调用的位置,接着往后执行
- 返回值(return)
"""
1)返回值的意义:返回值就是从函数内部传递到函数外部的数据
2)怎么将函数内部的数据传递函数外部(怎么返回)
将需要传递到函数外部的数据放在return关键字的后面 (return后面的值就是函数的返回值,也就是通过出口传递到外部的数据)
3)怎么在函数外部获取函数的返回值 - 获取函数返回值
获取函数调用表达式的值就是获取函数的返回值。(函数返回值能做的事情,函数调用表达式都可以做)
"""
# 练习2:定义一个函数,将两个字符串合并成一个字符串,合并方式如下:
# 'abc' 和 '123' -> 'a1b2c3'
# 'abc' 和 '123456' -> 'a1b2c3456'
# 'abcde' 和 '123' -> 'a1b2c3de'
def merge_str(str1, str2):
length = min(len(str1), len(str2))
new_str = ''
for index in range(length):
new_str += str1[index] + str2[index]
new_str += str1[length:] + str2[length:]
return new_str # 'a1b2c3'