01.设计一个函数,可以传入一个或多个单词的字符串,并返回该字符串,但所有五个或更多字母的单词都前后颠倒
a = input("输入:")
print(a)
#将一句话以空格为分界拆分为单个单词
b = a.split(" ")
ls_1 = []
ls_2 = []for i in range(len(b)):#判断单个单词的长度是否大于五个字母#如果小于五个字母将此单词添加到ls_2列表中#否则将此单词前后颠倒加入到ls_2列表中c = b[i]if len(c) < 5 :ls_2.append(c)else:d = c[::-1]ls_2.append(d)
print(ls_2)
#将列表转换为字符串
str_num = ''.join(str(i)+' ' for i in ls_2)
print(str_num)
运行结果:
02.给定一个字符串,判断该字符串是否是回文。
#给定一个字符串,判断该字符串是否是回文。
#回文是指顺读或倒读都一样的字、诗句等如aabaa、abacaba 是回文,aaabaaaa则不是回文def huiwen ():a = input("请输入一段字符串:")#将输入的字符串翻转b = a[::-1]#判断翻转后的字符串和翻转前的字符串是否相同,相同则是回文字符if a == b :print(f"{a}是回文字符")print()else :print(f"{a}不是回文字符")print()while True :huiwen()
运行结果:
03.存在一个列表,列表的元素都是从1~N的元素组成,现在有个元素成对出现了,找出这个成对出现的元素。
#存在一个列表,列表的元素都是从1~N的元素组成,现在有个元素成对出现了,找出这个成对出现的元素。
print("存在一个列表,列表的元素都是从1~N的元素组成,现在有个元素成对出现了,找出这个成对出现的元素")def a ():#将元素输入列表ls,和列表b,使b的长度比ls少1ls = input("请输入一串数字(数字间用,分开):").split(",")a = []for k in range(len(ls)):a.append(int(ls[k]))b = []for k in range(len(ls)):b.append(int(ls[k]))b.pop(0)print(a)for i in range(len(a)) and range(len(b)):if a[i] == b[i]:print(f"元素{a[i]}成对出现")while True :a()
运行结果:
04.存在一个列表,该列表中的元素都是成对出现,现在有 "一个" 不是成对出现,找出它。
#存在一个列表,该列表中的元素都是成对出现,现在有 "一个" 不是成对出现,找出它。
print("存在一个列表,该列表中的元素都是成对出现,现在有一个不是成对出现,找出它。")def a ():ls = input("请输入一串数字(数字间用逗号分开):").split(",")a = []b = []c = []for i in range(len(ls)):a.append(int(ls[i])) #a = [1, 1, 2, 2, 3, 3, 4, 5, 5, 6, 6] for i in range(len(ls)): #b = [0, 1, 1, 2, 2, 3, 3, 4, 5, 5, 6, 6] b.append(int(ls[i]))b.insert(0,0)for i in range(len(a)) and range(len(b)):if i != 1 and i % 2 == 0 :c.append(a[i-1])c.append(b[i-1])if c[0] == c[1]:c.clear()else:print(f"元素{a[i-2]}不是成对出现")breakwhile True :a()