1.编写一个程序,接受一系列以空格分隔的单词作为输入,在删除所有重复单词并按字母数字排序后打印这些单词。
假设向程序提供以下输入:hello world and practice makes perfect and hello world again 输出:again and hello makes perfect practice world
word = input().split()
for i in word:
if word.count(i)>1:
word.remove(i)
word.sort()
print(*(word))
word=input('请输入单词(空格隔开):').split()
[word.remove(i) for i in word if word.count(i)>1]
word.sort()
print(*(word))
word=sorted(list(set(input('请输入单词(空格隔开):').split())))
print(*(word))
str1=input('请输入单词(空格隔开):').split()
li=[]
for i in str1:
if i not in li:
li.append(i)
print(' '.join(sorted(li)))
2. 编写一个程序,它接受一系列逗号分隔的 4 位二进制数作为输入,
然后检查它们是否可以被 5 整除。 可被 5 整除的数字将以逗号分隔的顺序打印。输入:0100,0011,1010,1001 输出:1010
num=input('请输入四位二进制数(以,隔开):').split(',')
print(','.join([i for i in num if int(i,2)%5==0 ]))
def zh(x):
return int(x,2)%5==0
num=input('请输入四位二进制数(逗号隔开):').split(',')
print(*(list(filter(zh,num))))
num=input('请输入四位二进制数(逗号隔开):').split(',')
print(*(list(filter(lambda x:int(x,2)%5==0,num))))
print(*(i for i in input('请输入四位二进制数(逗号隔开):').split(',') if int(i,2)%5==0))
3.3.编写一个程序,找出 1000 到 3000(均包括在内)之间的所有数字,使得该数字的每一位都是偶数。
获得的数字应以逗号分隔的顺序打印在一行上。
li=[]
for i in range(1000,3001):
g=i%1000
s=i//10%100
b=i//100%10
q=i//1000
if g%2==0 and s%2==0 and b%2==0 and q%2==0:
li.append(i)
print(*(li))
li=[]
for i in range(10,30):
f = 1
for j in str(i):
if ord(j)%2!=0:
f=0
if f==1:
li.append(i)
print(*(li))
print(ord('9'))
def zh(x):
return all(ord(i)%2==0 for i in x)
li=[str(i) for i in range(1000,3001)]
print(*(list(filter(zh,li))))
print(*(i for i in range(1000,3001) if all(map(lambda x:int(x)%2==0,str(i)))))
from functools import reduce
def isD(boo,x):
return int(x)%2==0 and boo
print(*(i for i in range(1000,3001) if reduce(isD,str(i),True)),sep=',')
|