基础语法-逻辑实现
逻辑
各数据类型自带的方法介绍:字符串,列表,字典等.....
各种模块
复习
数据类型
# python基础的数据类型有哪些?
# 1. 身份证号码使用什么类型存储?
idcard = '371500xxxxxxx' type(idcard) # 什么类型?
demo1 = {'中国':'China','日本':'JP'}
数据类型补充
转化
# 转化为整数
int()
# 转化为小数
float()
# 转化为字符串
str()
1. 逻辑实现
1.1 判断结果
# 如果 ....
if 条件:
成立时执行的代码....
if a> b:
print('a大')
# 如果...否则...
if a > b:
print('a的值大')
else:
print('b的值大')
# 如果...多个或者....否则
if chengji >= 90: # 成绩=95 -->优秀!
print('优秀')
elif chengji>=80: # 成绩=75 ---> 中等
print('良好')
elif chengji>=60:
print('中等')
else:
print('不及格')
返回False的情况
None
''
0
空容器(空列表,空字典,...)
2. 循环
while
# 必不可少的3个关键语法
i = 1
while(i<=3):
......
i +=1 #i改变
1. 变量有初始值
2. 有条件
3. 变量迭代(不断改变)
登陆最多允许输入密码3次
def demo7():
'''登陆验证实现:最多允许错误输入3次!'''
i = 1
while(i<=3):
name = input('请输入用户名:')
pwd =input('请输入密码:')
if name=='admin' and pwd =='123':
print('成功')
break #停止循环! containue: 停止本次循环!
else:
print(f'用户名或密码错误,还有{3-i}次机会')
i = i+1
print('结束!')
for...in
编列列表,字典,元祖,字符串
for 临时变量名 in 变量
代码...
# 遍历字典
d01= {'zhangsan':'张三','lisi':'李四','wangwu':'王五','tom':'汤姆'}
for key in d01: #字典编列时,获取是key值
print(d01[key])
范围,经常在循环中使用
class range(stop)
class range(start, stop[, step])
start:表述数字序列开始值,如果该参数没有被提供则值为0
stop: 数字序列结束值
stop: 数字序列步长,如果该参数没有被提供则值为1
#0-10的列表
list(range(10)
技巧
def demo11():
'''技巧2:同时编列key和value!'''
d01 = {'zhangsan': '张三', 'lisi': '李四', 'wangwu': '王五', 'tom': '汤姆'}
print(d01.items()) # [(),(),()]
for k,v in d01.items():
print(f'名字{k},值:{v}')
# 技巧3: 同时打印列表的序号/索引 和 值
list01 = ['张三','李四','王五']
for i, v in enumerate(list01):
print(f'索引{i},值:{v}')
# 技巧4: zip函数 同时遍历多个列表
names = ['小王','小李','小张']
ages = [20, 22, 24]
# 同时循环取对应的值
for name,age in zip(names,ages):
print(f'名字:{name},年龄:{age}')
# 技巧5 : 列表翻转
for i in reversed(names):
print(i)
# 技巧6:排序
list01 = ['c','a','z','h']
list02 = sorted(list01)
print(list02)
for i in list02:
print(i)
# 技巧7;列表推倒式-->生成新列表
#技巧:列表推倒式
list01 = range(10) # 0---9
list02 = [i*i for i in list01]
print(list02) #[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
list03 = [i*i for i in list01 if i%2==0 and i>2]
退出循环: break
退出本次循环:containue
任务
学生管理系统!
学生基础的属性(姓名,性别,年龄)
存储班级中多个人资料, 实现如下工能
1. 增加人员信息
2. 删除人员信息
3. 修改人员信息
4. 编列人员列表
5. 根据名字查询人员资料
7. 统计班级平均年龄
#分析
1. 1个人资料: {'name':'乔林茹','sex':'女','age':20}
2. 多个人资料:
[{'name':'乔林茹','sex':'女','age':20},
{'name':'左航宇','sex':'男','age':20}
]