-
输入一个字符串,打印所有奇数位上的字符(下标是1,3,5,7…位上的字符)
例如: 输入**'abcd1234 ’ ** 输出**‘bd24’**
str1 = ('** \'abcd1234 \' **') for x in range(len(str1)): if x % 2 != 0: print(str1[x])
-
输入用户名,判断用户名是否合法(用户名长度6~10位)
user_name = input('请输入用户名:') print('用户名长度是否合法', 6 <= len(user_name) <= 10)
-
输入用户名,判断用户名是否合法(用户名中只能由数字和字母组成)
例如: ‘abc’ — 合法 ‘123’ — 合法 ‘abc123a’ — 合法
user_name = input('请输入用户名:') for x in user_name: a = '1' <= x <= '9' b = 'a' <= x <= 'z' c = 'A' <= x <= 'Z' if (a or b or c) != True: print('用户名长度不合法') break else: print('用户名长度合法')
-
输入用户名,判断用户名是否合法(用户名必须包含且只能包含数字和字母,并且第一个字符必须是大写字母)
例如: ‘abc’ — 不合法 ‘123’ — 不合法 ‘abc123’ — 不合法 ‘Abc123ahs’ — 合法 ‘Abc’ — 不合法
user_name = input('请输入用户名:') for i in range(len(user_name)): a = '1' <= user_name[i] <= '9' b = 'a' <= user_name[i] <= 'z' c = 'A' <= user_name[i] <= 'Z' d = 'A' <= user_name[0] <= 'Z' if (a or b or c) and d != True: print('用户名长度不合法') break else: print('用户名长度合法')
-
输入一个字符串,将字符串中所有的大写字母取出来产生一个新的字符串
例如:输入**‘abFc1shj2A3klBs99+2kDkk’** 输出:‘FABD’
str1 = input('请输入一个字符串:') new_str1 = '' for x in str1: if 'A' <= x <= 'Z': new_str1 += x print(new_str1)
-
输入字符串,将字符串的开头和结尾变成’+',产生一个新的字符串
例如: 输入字符串**‘abc123’, 输出’+bc12+'**
str1 = input('请输入一个字符串:') new_str1 = '' for x in range(len(str1)): if x == 0 or x == len(str1) - 1: new_str1 += '+' else: new_str1 += str1[x] print(new_str1)
-
输入字符串,获取字符串的中间字符
例如: 输入**‘abc1234’** 输出:‘1’ 输入**‘abc123’** 输出**‘c1’**
str1 = input('请输入一个字符串:') le = len(str1) if le % 2 == 0: new_str1 = str1[le//2 - 1] + str1[le//2] else: new_str1 = str1[le//2] print(new_str1)
-
(难)写程序实现字符串函数find/index的功能(获取字符串1中字符串2第一次出现的位置)
例如: 字符串1为:how are you? Im fine, Thank you! , 字符串2为:you, 打印8
str1 = 'how are you? Im fine, Thank you!' str2 = 'you' new_str1 = '' j = 0 count = 0 for i in range(len(str1)): if str1[i] == str2[j]: new_str1 += str1[i] j += 1 if new_str1 == str2: break count += 1 print(count - len(str2) + 1)
-
获取两个字符串中公共的字符
例如: 字符串1为:abcaaa123, 字符串2为: huak3 , 打印:公共字符有:a3
str1 = 'abcaaa123' str2 = 'huak3' new_str = '' for a in str1: for b in str2: if a in new_str: break if a == b: new_str += a print(new_str)
-
定义一个变量保存一个学生的信息,学生信心中包括:姓名、年龄、成绩(单科)、电话、性别
stu = {'name': 'stu1', 'age': 19, 'score': 67, 'tel': 5687900789, 'gender': '男'}
-
定义一个列表,在列表中保存6个学生的信息(学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明) )
- 统计不及格学生的个数
- 打印不及格未成年学生的名字和对应的成绩
- 求所有男生的平均年龄
- 打印手机尾号是8的学生的名字
- 打印最高分和对应的学生的名字
- 删除性别不明的所有学生
- 将列表按学生成绩从大到小排序(挣扎一下,不行就放弃)
# 定义一个列表,在列表中保存6个学生的信息(学生信息中包括: 姓名、年龄、成绩(单科)、电话、性别(男、女、不明) )
students = [
{'name': 'stu1', 'age': 19, 'score': 67, 'tel': 5687900789, 'gender': '男'},
{'name': 'stu2', 'age': 17, 'score': 68, 'tel': 1133246728, 'gender': '女'},
{'name': 'stu3', 'age': 18, 'score': 90, 'tel': 1322467862, 'gender': '女'},
{'name': 'stu4', 'age': 16, 'score': 89, 'tel': 2562345839, 'gender': '男'},
{'name': 'stu5', 'age': 21, 'score': 34, 'tel': 2416783367, 'gender': '不明'},
{'name': 'stu6', 'age': 12, 'score': 55, 'tel': 4364621224, 'gender': '男'}
]
# 1.统计不及格学生的个数
count = 0
for x in students:
if x['score'] < 60:
count += 1
print(count)
# 2.打印不及格未成年学生的名字和对应的成绩
for x in students:
if x['score'] < 60:
print(x['name'], x['score'])
# 3.求所有男生的平均年龄
s = 0
i = 0
for x in students:
s += x['age']
i += 1
print(s / i)
# 4.打印手机尾号是8的学生的名字
for x in students:
tl = x['tel']
if tl % 10 == 8:
print(x['name'])
# 5. 打印最高分和对应的学生的名字
max_score = 0
for x in students:
if x['score'] > max_score:
max_score = x['score']
for x in students:
if x['score'] == max_score:
print(max_score, x['name'])
# 6.删除性别不明的所有学生
# for x in students:
# if x['gender'] == '不明':
# students.remove(x)
# print(students)