-
输入一个字符串,打印所有奇数位上的字符(下标是1,3,5,7…位上的字符)
例如: 输入**'abcd1234 ’ ** 输出**‘bd24’**
str = 'abcd1234' str1 = '' for x in range(len(str)): if x % 2 != 0: str1 += str[x] print(str1)
-
输入用户名,判断用户名是否合法(用户名长度6~10位)
name = '1234568id' if 6 <= len(name) <= 10: print('合法') else: print('不合法')
-
输入用户名,判断用户名是否合法(用户名中只能由数字和字母组成)
例如: ‘abc’ — 合法 ‘123’ — 合法 ‘abc123a’ — 合法
str = 'abc123' for x in str: if not ('0' <= x <= '9' or 'a' <= x <= 'z' or 'A' <= x <= 'Z'): print('不合法') break else: print('合法')
-
输入用户名,判断用户名是否合法(用户名必须包含且只能包含数字和字母,并且第一个字符必须是大写字母)
例如: ‘abc’ — 不合法 ‘123’ — 不合法 ‘abc123’ — 不合法 ‘Abc123ahs’ — 合法 ‘Abc’ — 不合法
str = 'Aabc123' hefa = False if 'A' <= str[0] <= 'Z': for x in str: if '0' <= x <= '9' or 'a' <= x <= 'z' or 'A' <= x <= 'Z' : hefa = True else: print('不合法') break else: if hefa: print('合法') else: print('不合法')
-
输入一个字符串,将字符串中所有的大写字母取出来产生一个新的字符串
例如:输入**‘abFc1shj2A3klBs99+2kDkk’** 输出:‘FABD’
str = 'abFc1shj2A3klBs99+2kDkk' new_str = '' for x in str: if 'A' <= x <= 'Z': new_str += x print(new_str)
-
输入字符串,将字符串的开头和结尾变成’+',产生一个新的字符串
例如: 输入字符串**‘abc123’, 输出’+bc12+'**
str = 'abc123' str1 = '' for x in range(1,len(str)-1): str1 += str[x] new_str = '+' + str1 + '+' print(new_str)
-
输入字符串,获取字符串的中间字符
例如: 输入**‘abc1234’** 输出:‘1’ 输入**‘abc123’** 输出**‘c1’**
str = 'abc234' count = len(str) if count % 2 != 0: print(str[count//2]) else: print(str[count//2-1]+str[count//2])
-
(难)写程序实现字符串函数find/index的功能(获取字符串1中字符串2第一次出现的位置)
例如: 字符串1为:how are you? Im fine, Thank you! , 字符串2为:you, 打印8
-
获取两个字符串中公共的字符
例如: 字符串1为:abcaaa123, 字符串2为: huak3 , 打印:公共字符有:a3
str1 = 'abcaaa123' str2 = 'huak3' new_str = '' for x in str1: if x in str2: new_str += x # print(new_str) str3 = '' for i in new_str: if i not in str3: str3 += i print(str3)
-
定义一个变量保存一个学生的信息,学生信心中包括:姓名、年龄、成绩(单科)、电话、性别
student = {'name':'小红','age':18,'math':90,'tel':'123456','gender':'女'}
-
定义一个列表,在列表中保存6个学生的信息(学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明) )
list = [ {'name':'小红','age':18,'math':56,'tel':'123456','gender':'女'}, {'name':'小明','age':19,'math':98,'tel':'123458','gender':'男'}, {'name':'小强','age':17,'math':89,'tel':'125456','gender':'男'}, {'name':'小华','age':18,'math':93,'tel':'123478','gender':'男'}, {'name':'小莉','age':19,'math':60,'tel':'123490','gender':'女'}, {'name':'小瑜','age':17,'math':34,'tel':'123479','gender':'不明'} ]
-
统计不及格学生的个数
count = 0 for index in range(len(list)): if list[index]['math'] < 60: count += 1 print(count)
-
打印不及格未成年学生的名字和对应的成绩
for index in range(len(list)): if list[index]['age'] < 18 and list[index]['math'] < 60: print(list[index]['name'],list[index]['math'])
-
求所有男生的平均年龄
age_sum = 0 count = 0 for index in range(len(list)): if list[index]['gender'] == '男': age_sum += list[index]['age'] count += 1 print(age_sum / count)
-
打印手机尾号是8的学生的名字
for index in range(len(list)): if list[index]['tel'][-1] == '8': print(list[index]['name'])
-
打印最高分和对应的学生的名字
math_list = [] name_list = [] for index in range(len(list)): math_list.append(list[index]['math']) name_list.append(list[index]['name']) for index1 in range(len(math_list)): if math_list[index1] == max(math_list): print(max(math_list),name_list[index1])
-
删除性别不明的所有学生
for index in range(len(list)): if list[index]['gender'] == '不明': del list[index] print(list)
-
将列表按学生成绩从大到小排序(挣扎一下,不行就放弃)
-