美食网站源代码,网站外链作用,伊春网站推广,提供邯郸企业建网站题目91
# 自动生成字符串
# a [小马,小羊,小鹿]
# b [草地上,电影院,家里]
# c [看电影,听音乐,吃晚饭]
# 随机生成三个0~2的数字#xff0c;若是1#xff0c;0#xff0c;2 #xff0c;则输出#xff1a; 小羊在草地上吃晚饭
import random
a [小马,小羊,小鹿]
b […题目91
# 自动生成字符串
# a [小马,小羊,小鹿]
# b [草地上,电影院,家里]
# c [看电影,听音乐,吃晚饭]
# 随机生成三个0~2的数字若是102 则输出 小羊在草地上吃晚饭
import random
a [小马,小羊,小鹿]
b [草地上,电影院,家里]
c [看电影,听音乐,吃晚饭]
d [random.randint(0,2) for _ in range(3)]
print(f{a[d[0]]}{b[d[1]]}{c[d[2]]})题目92
# 保留重复项
# 在一个全是字符串的列表中保留那些只有重复相同字符的字符串。
# 单个字符的字符串被认为是重复字符串
# 输入
# [aa,123,444,b,xyz]
# [ann,123,4g4,de,xyz]# 第一种利用字符串*代表重复
def is_repeat(string:str):return string[0]*len(string) string# 利用set去重如果去重后的字符串只包含原字符串的第一个字符说明该字符串是重复字符串
# 换个说法去重后只有一个字符
def is_repeat1(string:str):return len(set(string)) 1list1 [aa,123,444,b,xyz]
list2 [ann,123,4g4,de,xyz]
list3list1[:]
list4list2[:]
print(list1)
print(list2)
list1 [x for x in list1 if is_repeat(x)]
list2 [x for x in list2 if is_repeat(x)]
print(list1)
print(list2)print(list3)
print(list4)
list3 [x for x in list3 if is_repeat1(x)]
list4 [x for x in list4 if is_repeat1(x)]
print(list3)
print(list4)题目93
# 给定两个值m和n,n始终为正整数要求返回一个最接近m的n的整倍数。如果m正好处于两个整倍数中间则返回较大的整倍数# 输入【477】
# 输出49m int(input(请输入一个数字作为m:))
n int(input(请输入一个数字作为n:))# 将题目中的返回条件换个说法这题就简单许多其实本身也不难
# m 一定是介于第一个比m大的n的倍数和最后一个比m小的n的倍数之间
# 还有对‘中间’这个词语的理解: 某个数到另外两个数的距离相等说明这个数在这两个数中间
# 根据举例的说法来看题目中的‘中间’应该解释为之间。42 47 49 好了不咬文嚼字就这样吧。# 第一种缺点在m比n大很多的时候前面浪费一定的时间
each 1
while True:if each * n m:print(each*n)breakeach 1# 第二种是为了解决上一种的缺点来的
each 1
while True:if not (m each) % n:print(meach)breakeach 1题目94
# 出现顺序比较
# 给出一个全部为小写字母的字符串并给出两个一定存在的字母a和b.当字母在字符串中最后一次出现的位置比b第一次出现的位置还要靠前时
# 返回True否则返回False# 获取index 使用index
# index 返回最小的index, 意思就是第一次出现的
# rindex 返回最大的index, 意思就是最后一次出现str1 zheng zai xue xi python ni xin bu
print(str1)
char_a input(请输入在上述字符串中的一个字母)
char_b input(请输入在上述字符串中的另一个字母)if str1.index(char_a) str1.rindex(char_b):print(True)
else:print(False)题目95
# 输入一个多位数字输出一个一位数字。这个一位数是数字多位数字各位数字之和若和不是一位数字那么继续对和的各位数字求和直到和为一个一位数字为止
# 第一眼就想到了递归
def sum_num(num:int):print(num in:, num)return num if num 10 else sum_num(sum(int(x) for x in str(num)))print(sum_num(987))# 不用递归
def sum_num1(num:int):while True:print(num in:, num)if num 10:return numnum sum(int(x) for x in str(num))print(sum_num1(987))# 再优化一下break的条件是num 10, 意思就是循环的条件是num 9. 减少了一行
def sum_num2(num:int):while num 9:print(num in:, num)num sum(int(x) for x in str(num))return numprint(sum_num2(987))