引言
python小程序之过7游戏、单词单复数分类
文章目录
一、过7游戏
1.1 题目
7的倍数或者数字中包含7的打印过,不包含的则打印数字
1.2 代码
1.2.1 while循环
i = 1
while i <=100:
if i % 7 == 0 or str(i).find('7') != -1:
print('过')
else:
print(i)
i += 1
输出结果:
1.2.2 for循环
for i in range(1,101):
if i % 7 == 0 or '7' in str(i):
print('过')
else:
print(i)
输出结果:
1.2.3 调用函数形式
def 过七游戏(x):
i = 1
while i <=x:
if i % 7 == 0 or str(i).find('7') != -1:
print('过')
else:
print(i)
i += 1
过七游戏(800)
输出结果:
1.3 代码解释
- 使用for循环从1报数到上限或者使用while循环
- 在循环中,使用’7’ in str(i)来检查数字中是否含有数字7或者使用str.find方法是否能找到数字7
- 使用i % 7 == 0来检查数字是否是7的倍数
- 如果任一条件满足,就打印“过”,否则打印出当前的数字
二、单词单复数分类
2.1 题目
判断每个元素是否是es/s结尾,是的话放入一个新列表中,最后输出这个列表(复数)
2.2 代码
list1 = [
'red',
'apples',
'orange',
'pink',
'bananas',
'blue',
'black',
'white']
new_list = []
for i in list1:
if i[-2] == 'es' or i[-1] == 's':
new_list.append(i)
print(new_list)
输出结果:
2.3 代码解释
这段代码的目的是从原始列表
list1
中筛选出以字母 ‘es’ 或 ‘s’ 结尾的字符串,并将这些字符串放入一个新列表new_list
中
list1 = [
'red',
'apples',
'orange',
'pink',
'bananas',
'blue',
'black',
'white'
]
- 这行代码定义了一个名为
list1
的列表,它包含了八个字符串元素
new_list = []
- 这行代码创建了一个名为
new_list
的空列表,用于存放符合条件的字符串
for i in list1:
- 这行代码开始了一个
for
循环,它将遍历list1
中的每个元素。在每次迭代中,变量i
会被设置为列表中的下一个元素
if i[-2] == 'es' or i[-1] == 's':
- 这是一个
if
语句,用于检查当前元素i
的最后两个或一个字符是否是 ‘es’ 或 ‘s’。在 Python 中,i[-1]
表示字符串i
的最后一个字符
new_list.append(i)
- 如果
if
语句的条件为真(即字符串以 ‘es’ 或 ‘s’ 结尾),则执行这个代码块,将元素i
添加到new_list
列表的末尾
print(new_list)
- 循环结束后,这行代码打印出
new_list
,即所有以 ‘es’ 或 ‘s’ 结尾的字符串组成的列表
这些都是在 list1
中以 ‘es’ 或 ‘s’ 结尾的字符串
三、思考
3.1 过七游戏
- for循环/while循环+if条件判断的结合
- while循环需要注意i的自增
- for循环与range的结合需要注意range的区间前闭后开
3.2 单词单复数分类
- 字符串查找的方法,索引为-1则为最后一位,索引为-2则为最后两位