“”"
多行注释
“”"
或者
‘’’
多行注释
‘’’
‘’’
1.检测数据类型 type(数据)
list 列表 [1,2,3]
tuple 元组 (1,2,3)
set 集合 {1,2,3}
dict 字典 {‘name’:‘Tom’,‘age’:18}
2.格式化输出
%s 字符串
%d 有符号的十进制数
%f 浮点数
weight = 65.5
print('体重是%f.2岁' %weight) # 保留几位在 f 后加.数字
student_id = 3
print('学号是%03d' %student_id) #三位数,不足三位前面补 0 输出 003,超出的原样输出
age = 18
print('my age is %d,and 明年%d岁.' %(age,age+1))
f 直接格式化输出(py3.6)
print(f'my name is {name},明年{age + 1}岁了')
转义字符
/n 换行 /t 制表符(一个 tab 键(4 个空格)的距离)
结束符(print 默认结束是换行/n)
print(' ' , end = "...")
输入 并赋值
x = input("提示信息") #数据类型为 str
数据类型转换
eval() --计算在字符串中的有效 python 表达式,并返回一个对象(把字符串里转换成原本的类型)
算术运算符 //整除 **指数
赋值运算符
复合赋值运算符 c += a <<->> c = c+a 先计算复合赋值运算符右边的运算,再复合赋值。
比较运算符
逻辑运算符 and(有0则0,否则结果为最后一个非0数) or(所有为0才0,否则为第一个非0数) not
条件语句
if True:
print(' ')
elif (18<=age<=60):
print(' ')
else:
print(' ')
导入模块 import 模块名
break 终止循环
continue 退出当前一次循环(本次循环continue 后的不执行) 继续下一次循环 (一定要在 continue 前就修改计数器)
打印一行五个* while 循环 然后 print(’*’,end=’’) 用 end 取消换行
str1 = 'nmsl'
for i in str1:
print('i')
while else 循环 当while 正常完成循环后才执行else后的 break 不执行 continue 执行
字符串
三引号字符串可以多行
切片
str1 = '073028902'
`print(str1[2:5:1])`#取不到结束位置数
`print(str1[-4:-1:-1])`#不能选取出数据 选取数据方向与步长方向冲突
查找
name_list = ['Tom','Lily','Rose']
print(name_list)
print(name_list[0])
print(name_list.count('Tom'))
print(len(name_list))
print('Lily' in name_list)
name_list.extend('xiaoming')
print(name_list)
['Tom', 'Lily', 'Rose', 'x', 'i', 'a', 'o', 'm', 'i', 'n', 'g']
name_list.extend(['xiaoming'])
print(name_list)
['Tom', 'Lily', 'Rose', 'xiaoming']
修改列表
列表的循环遍历
while 遍历
name_list = ['Tom','Lily','Rose']
i = 0
while i < len(name_list):
print(name_list[i])
i = i + 1
for 遍历
for i in name_list:
print(i)
列表嵌套
name_list = [['小红','小明','小绿'],['Tom','Lily','Rose'],['张三','李四','王五']]
print(name_list[2][1])#拿到李四
八名老师随机分配给三个办公室
import random
teachers = ['a','b','c','d','e','f','g','h']
offices = [[],[],[]]
for name in teachers:
num = random.randint(0,2)
offices[num].append(name)
print(offices)
一个元组可以存储多个数据,元组内的数据不能修改
t = (10,20,30)
print(type(t))#tuple
t1 = (10,)#如果定义元组只有一个数据,这个数据后最好也添加逗号,否则数据类型为唯一这个数据的数据类型
#如果元组里有列表,可修改列表里的数据
t2 = ('aa','bb',['cc','dd'])
t2[2][0] = 'Tom'
print(t2) #('aa', 'bb', ['Tom', 'dd'])
创建
dict1 = {
'name':'Tom','age':20,'gender':'男'}
dict2 = {
} #空字典
dict3 = dict()
操作
增加
dict1['name'] = 'Rose'
dict1['id'] = 110
删除
del(dict1) #删完字典找不到
del dict1['gender']
dict1.clear() #变成空字典
修改 与增加差不多
查找
print(dict1['name']) #Tom 不存在则报错
字典序列.get(key,默认值) #如果当前查找的 key 不存在则返回第二个参数(默认值),如果省略第二个参数,则返回 None
print(dict1.get('name')) #Tom
print(dict1.get('id',110)) #110
print(dict1.get('id')) #None
print(dict1.keys()) #查找字典中所有的 key,返回可迭代对象(可用 for 循环遍历)
print(dict1.values()) #查找字典中所有的值,返回可迭代对象
print(dict1.items()) #查找字典中所有的键值对,返回可迭代对象。
里面数据为元组,元组数据一是 key 元组数据二是 key 对应值
遍历键值对
dict1 = {
'name':'Tom','age':20,'gender':'男'}
for key,value in dict1.items():
print(f'{key}={value}')
创建集合用{},set(),创建空集合只能用 set() 因为{}用来创建空字典
无序性(输出顺序无序) 唯一性(不显示重复数据)
增加
add()
update() 增加的数据是序列[]
删除
查找
in/not in
s1 = {
10,20,30}
print(10 in s1) #True
运算符 + 合并 字符串、列表、元组
* 复制 字符串、列表、元组
str1 = 'a'
print(str1*5) #aaaa
for i in range(1,10,1):
print(i) #1 2 3 4 5 6 7 8 9
for i in range(10) #默认起点 0 步长 1
print(i) #0 1 2 3 4 5 6 7 8 9
list1 = ['a','b','c','d','e']
for i in enumerate(list1):
print(i) #(0, 'a') (1, 'b') (2, 'c') (3, 'd') (4, 'e')
for index,char in enumerate(list1,start=1):
print(f'下标是{index},对应字符是{char}')
list1=[]
for i in range(10)
list1.append(i)
print(list1)
列表推导式
list1 = [i for i in range(10)]
print(list1)
带 if 列表推导式
list1 = [i for i in range(10) if i%2 ==0]
print(list1)
多个 for循环实现列表推导式
list1 = [(i,j) for i in range(1,3) for j in range(3)]
print(list1) #[(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)] 在列表中追加元组
字典推导式
快速合并列表为字典
dict1 = {
i:i**2 for i in range(1,5)}
print(dict1) # {1: 1, 2: 4, 3: 9, 4: 16}
list1 = ['name','age','gender']
list2 = ['Tom','18','man']
dict1 = {
list1[i]:list2[i] for i in range(len(list1))}
print(dict1) # {'name': 'Tom', 'age': '18', 'gender': 'man'}
提取字典目标数据
counts = {
'MBP':268,'HP':125,'DELL':201,'Lenovo':199,'acer':99}
count1 = {
key:value for key,value in counts.items() if value>=200}
print(count1) # {'MBP': 268, 'DELL': 201}
集合推导式
list1 = [1,1,2]
set1 = {
i**2 for i in list1}
print(set1) # {1, 4}
‘’’