python逻辑语法基本实现

基础语法-逻辑实现
  逻辑
  各数据类型自带的方法介绍:字符串,列表,字典等.....
  各种模块
复习
  数据类型
# 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}
]
posted @ 2020-10-28 13:46  我觉得勉强还行  阅读(163)  评论(0编辑  收藏  举报