# 关系运算符 结果 true false bool类型
# 逻辑运算符 and or not # and 两边都是非零数字的时候,结果返回最后的数字值 # or 两边都是非零数字的时候,结果返回最前面的数字值
# 字符串进行格式化 %s字符串 %d 整数 %f浮点数 print('我喜欢听%d岁的%s唱歌'%(age,name))
# 二进制:0,1 八进制0~7 十进制0~9 十六进制 0~9 a~f
# 十进制转换成二进制 print(bin(a))
# 十进制转八进制 print(oct(a))
# 十进制转十六进制 result=hex(n)
# 其他进制转十进制 int()
# 位运算 & | ^(按位异或运算) ~ << >> 针对二进制进行的运算
# 总结:算术运算符 赋值运算符 比较运算符 逻辑运算符 位运算符
# if else ,if elif
# if 条件:
# 条件true,执行的语句
# elif 条件二:
# 条件二true,执行的语句
# else:
# 条件12都false 执行的语句
# 嵌套语句 if else
# 在python中,转换成布尔值时,只有0,‘’,None,(),{},【】会被转换成false,其他都会被转换成true
# while格式 while条件:要循环执行的代码 break表示退出当前循环
# for i in range: 循环体中的内容
# range(n):从0~n-1 range(start,finish,step) 【start,finish)包前不包后 步长为step默认为1
# for i in range(n): 循环体 else:如果上面的for循环0~n-1没有出现中断
# while else 不被中断则执行 否则不执行
# for循环的次数是固定的 while可以执行固定次数的循环 也可以执行不确定次数的循环
# continue 跳过本次循环继续下一次循环 (后面的语句不执行,继续下一次循环)
# 流程控制 条件判断语句 if if else
# 字符串索引机制 1、0~len(s)-1 2、-len(s)~-1
# 切片机制(字符串,列表)[start:end] [start:end:step] 默认step=1
# step为正数时表示从左向右 负数时表示从右向左
# 字符串常见操作
# len(x):获取字符串长度
# find:从左向右寻找,只要遇到一个符合要求的则返回位置,如果没有找到任何符合要求的则返回-1
# rfind:从右向左寻找,要遇到一个符合要求的则返回位置,如果没有找到任何符合要求的则返回-1
# count 统计指定字符个数 count(n)
# index与find区别:index也是表示查找,但是如果找不到就会报错
# 判断: startswith endswith isalpha isdigit isalnum(是否是字母或数字) isspace 返回类型为bool
代码的简单实现:
flag=True while flag: username = input('输入用户名或电话号码:') if (username.islower() and len(username) > 6 and username[0].isdigit() == False) or (len(username) == 11 and username.isdigit()): while True: password=input('输入密码:') if password.isdigit() and len(password)==6: if (username == 'admin123' and password == '123456') or (username == '12345678909' and password == '123456'): print('登录成功') flag=False break else: print('登录失败') break else: print('密码输入错误') else : print('格式不正确')
# 替换内容:replace(old,new,count)默认全部替换,也可以通过count指定次数 # 切割字符串:split rsplit splitlines,partition,rpartition # split('分隔符‘,maxsplit)返回的是列表 maxsplit返回最多的分隔次数 # splitlines按行分隔 # partition返回三元组 只切一刀 分别返回切 分隔符 没有切 # 修改大小写:capitalize(一句话的开头字母大写),title(每一个单词开头字母大写),upper,lower # 空格处理:添加空格控制字符串的对其方式:ljust(左对齐),rjust(右对齐),center(num)放在num长度的中间, # 删除字符串左侧或者右侧的空格 lstrip,rstrip,strip(左右两侧空格都去除) # 字符串拼接:join # 1、格式化:%d %s # 2 format(提供数字字段名 变量字段名(关键字赋值) # 大括号内省略字段名,传递位置参数 注意:大括号个数可以少于位置参数的个数,反之不然) name='赵丽颖' age=12 result='{}岁的{}真好看'.format(age,name) print(result) # 使用数字填充,从0开始计数 result='{0}岁的{1}真好看,我也{0}岁'.format(age,name) print(result) # 变量名的像是,format的参数必须是关键字参数 result='{age}岁的{name}真好看,我也{age}岁'.format(age=12,name='赵丽颖') print(result)
# 列表:存储多个数据 # 空列表[] <class 'list'> # 有内容的列表:['',''][8,9][8.9,9.0] 列表中可以含有列表 # 获取列表里面的元素,可以通过索引获得 列表的增删改查: 1、添加元素:append追加 类似排队 2、添加列表 extend追加 3、列表元素删除 pop remove clear pop(index) :根据下标删除列表中的元素,下标在写的时候要注意不要超出范围 index out of range pop():没有index参数时,从后向前删除一个元素 remove(element):根据元素名称进行删除 如果删除的元素不在列表中,value not in list 如果出现多个同名的元素,在执行删除操作时,只删除第一个元素 从左向右 判断xx元素是否存在于列表中 关键字in 元素in列表 返回值bool类型 remove常常搭配in和判断语句一起使用 clear():清空列表元素 del[index]根据index删除元素 del可以将列表定义删除 查找元素:index(元素):根据元素找该元素的位置下标 修改元素值 list[index]='' 查找:1、元素 in 列表 返回bool类型 元素not in列表 2、列表.index(元素) 返回元素的下标位置,如果没有该元素则报错 3、列表.count() 返回整数 返回值为0表示不存在该元素 否则返回该元素的个数 s = ['面包', '酸奶', '薯条', '苹果', '苹果'] insert(位置,元素):元素占了位置,其他元素只能向后移动 list=[1,2,34,45] +的用法:数字 字符串 s=‘aa’+‘bb’ s=aabb 列表 list=[12,23]+['d','df'] list=[12,23,d,df]
王者荣耀管理系统的实现
import time print('欢迎进入王者荣耀管理系统') print('-'*23) all_roles=[] while True: choice=input('请选择功能:\n 1.添加角色\n 2.删除角色\n 3.修改角色\n 4.查询角色\n 5.显示角色\n 6.退出\n ') if choice=='1': print('添加角色模块:\n') name=input('输入角色名字:') age=input('输入角色性别:') job=input('输入职业:') role=[name,age,job] all_roles.append(role) print('%s角色添加成功'%name) elif choice=='2': print('删除角色模块') role_name=input('输入想要删除的名字:') for role in all_roles: if role_name in role: ii=input('是否确定删除yes/no?') if ii=='yes': all_roles.remove(role) print('成功删除%s角色'%role_name) break else: print('不删除了') else: print('本系统不存在%s角色'%role_name) pass elif choice=='3': print('修改角色模块') role_name = input('输入想要修改角色的名字:') for role in all_roles: if role_name in role: print('存在该角色,信息如下') choice1=input('请选择想要修改的内容:8 名字 9 性别 10 职业') choice2=input('输入修改内容') if choice1=='8': role[0]=choice2 elif choice1=='9': role[1]=choice2 elif choice1=='10': role[2]=choice2 else: print('您的操作不存在') print('内容已经修改,修改后的信息如下:') print(role) break else: print('本系统中没有该角色信息') elif choice=='4': print('查询角色模块') role_name = input('输入想要查询的名字:') for role in all_roles: if role_name in role: print('存在该角色,信息如下') print(role) break else: print('本系统不存在%s角色' % role_name) elif choice=='5': print('打印角色') for role in all_roles: print(role[0].center(10),end='') print(role[1].center(10), end='') print(role[2].center(10), end='') print() elif choice=='6': print('选择退出王者荣耀') time.sleep(2) print('退出成功') break else: print('输入错误')