Python-小实践

  1 # 实现学生管理系统,完成对学生的增、删、改、查和退出系统
  2 
  3 # 要求1:是用来list保存学生姓名
  4 # 要求2:0代表 所有学员信息,1代表增加,2代表删除,3代表修改,4 代表查询,exit 退出
  5 # 每一个功能  有一个自定义的函数,界面如下:
  6 import random
  7 
  8 info_list = []
  9 
 10 
 11 def insert_info():
 12 
 13     info_dict = {}
 14     new_id = int(input('请输入学员编号:'))
 15     new_name = input('请输入学员姓名:')
 16     new_age = int(input('请输入学员年龄:'))
 17     new_sex = input('请输入学员性别:')
 18     for i in info_list:
 19         if i['id'] == new_id:
 20             print('编号已存在,请重新输入!')
 21             break
 22     else:
 23         info_dict['id'] = new_id
 24         info_dict['name'] = new_name
 25         info_dict['age'] = new_age
 26         info_dict['sex'] = new_sex
 27 
 28         info_list.append(info_dict)
 29     return info_list
 30 
 31 
 32 def del_info():
 33     del_name = input('请输入需要删除的学员姓名:')
 34     for n in info_list:
 35         if n['name'] == del_name:
 36             info_list.remove(n)
 37             print('{} 已被删除。'.format(del_name))
 38             break
 39     else:
 40         print('该学员不存在。')
 41     print('全部学员信息{}'.format(info_list))
 42 
 43 
 44 def update_info():
 45     update_name = input('请输入需要修改的学员姓名:')
 46     for n in info_list:
 47         if n['name'] == update_name:
 48             n['name'] = input('请输入新的名字:')
 49             break
 50     else:
 51         print('您输入的学员不存在。')
 52     print('全部学员信息{}'.format(info_list))
 53 
 54 
 55 def search_info():
 56     search_name = input('请输入需要查找的学员姓名:')
 57     for n in info_list:
 58         if n['name'] == search_name:
 59             print('学员信息:学号{0},姓名{1}, 年龄{2}, 性别{3}'.format(n['id'], n['name'], n['age'], n['sex']))
 60             print(f'学号{n["name"]}')
 61             break
 62     else:
 63         print('您输入的学员不存在。')
 64     print('全部学员信息{}'.format(info_list))
 65 
 66 
 67 def exit_info():
 68     print('退出学管系统。')
 69 
 70 
 71 def all_info():
 72     for i in info_list:
 73         print(f'学号{i["id"]}, 姓名{i["name"]},年龄{i["age"]},性别{i["sex"]}')
 74 
 75 
 76 def main_info():
 77     choice = """
 78 ----欢迎进入T66班学生管理系统----
 79 0:显示所有学员信息
 80 1:添加一个学员信息
 81 2:删除一个学员信息
 82 3:修改一个学员信息
 83 4:查询一个学员信息
 84 5:退出学管系统
 85 请输入你的选择:(0/1/2/3/4/5)
 86 """
 87     while True:
 88         try:
 89             option = int(input(choice))
 90             if option == 1:
 91                 insert_info()
 92             elif option == 2:
 93                 del_info()
 94             elif option == 3:
 95                 update_info()
 96             elif option == 4:
 97                 search_info()
 98             elif option == 0:
 99                 all_info()
100             elif option ==5:
101                 exit_info()
102                 break
103             else:
104                 print('输入信息有误,请重新输入')
105 
106         except KeyboardInterrupt as e:
107             print('输入不合法:', e)
108 
109 
110 # main_info()
111 
112 
113 # 石头剪刀布游戏
114 all_choice = ['石头','剪刀','']
115 win_list = [['石头','剪刀'],['剪刀',''],['','石头']]
116 prompt = '''
117 0 代表石头
118 1 代表剪刀
119 2 代表布
120 请输入你的选择(0、1、2):
121 '''
122 cwin = 0
123 pwin = 0
124 while cwin < 2 and pwin <2:
125     computer_choice = random.choice(all_choice)
126     choice = int(input(prompt))
127     try:
128         player = all_choice[choice]
129         if player == computer_choice:
130             print('平局,再来一次!')
131         elif [player,] in win_list:
132             print('赢了')
133             pwin +=1
134         else:
135             print('电脑赢了')
136             cwin += 1
137     except Exception as e:
138         print('未知错误打印%s'%e)
139 
140 try:
141     num = int(input('请输入数字:'))
142     print(num)
143 except ValueError:
144     print('输入的信息有误')
145 except Exception as e:
146     print('未知错误打印%s'%e)

 

 1 """
 2 给一个函数传入 一个字符串,例如,a_str = 'abcdeaB23',输出重复出现的字符共有几个,
 3 不区分大小写
 4 """
 5 def solution(s):
 6     # 方法一
 7     # result_list =[]
 8     # for i in set(s.lower()):
 9     #     if s.lower().count(i)>1:
10     #         result_list.append(i)
11     # return len(result_list)
12     
13     # 方法二
14     return len([i for i in set(s.lower()) if s.lower().count(i)>1])
15 
16 
17 a_str = 'abcdeaB'
18 print(solution(a_str))

 

posted @ 2021-07-29 22:36  术科术  阅读(69)  评论(0)    收藏  举报