1.书写格式
- 不需要声明变量类型,因为 在python中,变量为弱类型变量,Python解析器根据值自动匹配变量类型
- 分支结构、循环结构中的条件表达式,不需要用小括号括起来
- 执行语句体不需要大括号括起来,而是用冒号代替
2.格式化输出
- 百分号形式格式化输出
%s(字符串) %d(整数) %f(浮点数) - f-strings格式化输出
name = '张三'
age = 35
address = 'sd'
height = 1.75
print(name,age,address)
# 百分号形式格式化输出 => %s(字符串) %d(整数) %f(浮点数)
print('姓名:%s,年龄:%d,身高:%.2f,地址:%s' %(name,age,height,address))
#f-strings格式化输出
print(f'姓名:{name},年龄:{age},身高:{height},地址:{address}')
3.数据类型
- eval() :把字符串类型两边的引号去掉,转换为原数据类型
- 列表容器比较适合大批量数据的存储
- 字典容器比较适合单个事物存储,比如一个人的信息、一本书的信息、一个商品的信息
- 元组中的元素一旦定义就不能修改和删除,主要用于保护数据
range(
起始值, 结束值, 步长 )
:生成一个容器 , 包含头部但是不包含尾部的一个容器
datas = range(5)
datas = range(0,5)
datas = range(0,5,1) # 这3种结果一样
3.1 字符串切片
字符串属于容器类型,for in 循环常用于容器类型遍历
strs = 'I Love You'
for i in strs:
print(i)
print(strs[0])
## 字符串切片
# 字符串名称[起始位置:结束位置:步长] 包含头部但是不包含尾部(顾头不顾尾)
print(strs[0:6])
print(strs[0:6:1])
print(strs[:6]) # 上面3种结果一样
print(strs[:]) #没头没尾,则代表截取整个字符串
print(strs[0:]) #从第0个索引位置,截取到整个字符串结尾
print(strs[::-1]) #字符串翻转
print(strs[-1:-4:-1]) # 从尾部第一个位置开始截取,截取3个字符
print(strs * 3) #strs字符串的值重复3遍
3.2 字符串相关API
字符串.find()
检索关键词在字符串中出现的位置,找到返回索引下标,找不到返回-1
字符串.rfind()
从左向右查找,查找字符串中最右边的字符或子串与关键词是否相等,如果相等则返回索引
字符串.count()
返回字符或子串在字符串中出现的次数
字符串.replace('旧关键词', '新关键词')
旧关键词替换为新关键词
字符串.split('分隔符')
字符串按 分隔符 分割,返回一个列表
4. 函数参数
函数传参两种形式
- 位置传参,形参与实参一一对应
- 关键词传参, 形参变量 = value 的形式传参,不纠结传参顺序
- 形参可以定义缺省参数, 形参变量 = 默认值
不定长参数两种
- 不定长位置参数 *args, 函数接收到一个元组,可为空元组
- 不定长关键词参数 **kwargs,函数接收到一个字典,可为空字典
- *args,**kwagrs 可以一起传参给函数,*args在前
5. 三目运算符、推导式、Lambda表达式
###################三目运算符###################
a = 10
b = 69
maxnum = a if a > b else b
print(f'maxnum={maxnum}')
###################推导式###################
'''
主要作用是为了简化for循环代码
变量名称 = [临时变量 for循环],每次循环时,系统会将返回结果赋值给临时变量,然后使用append追加到列表中
'''
l = [i for i in range(10)]
print(l)
l = [i for i in range(10) if i % 2 == 0]
print(l)
###################Lambda表达式###################
#定义:变量 = lambda 函数参数:函数返回值
#调用:变量()
#匿名函数,作为参数传入其它函数,ex:列表.sort()
sum = lambda cur,agg : cur + agg
print(sum(3.14,0.618))
list = [ {'name':'Tom', 'age':18, 'mobile':'10086'},
{'name':'Rose', 'age':16, 'mobile':'10010'},
{'name':'Jack', 'age':21, 'mobile':'10000'}
]
list.sort( key = lambda l : l['age'],reverse=True)
print(list)