任务2:数值提取
1、调试以下代码,并删除全部注释后保存到s6B.py.
s=input("输入包含数字和空格的字符:")
a=s.split(#用空格分割字符串
a=Lx for xin a if x.isnumeric(]#从列表a中筛选出数字串
a=set(a)#转换为集合,目的:避免元素重复
a=sorted(a,key=int)#对集合元素(数字串)按int函数值递增排序
.join(a)#将列表a的元素用空格连接成字符串
print(s)
2、按以下要求修改代码,并保存到s6c.py.
(1)提取输入的全部数值(正整数),忽略其他非数字字符.
(2)将提取的数值递增输出(数值不重复)
(3)程序运行效果:
输入:a7d811b15C8639da6
输出:367891115
# s6B.py
s = input("输入包含数字和空格的字符:")
a = s.split()
a = [x for x in a if x.isnumeric()]
a = set(a)
a = sorted(a,key = int)
s=" ".join(a)
print(s)
# s6c.py.
s = input("输入包含数字和空格的字符:")
a = s.split()
a = [x for x in a if x.isnumeric() and isinstance(eval(x),int)]
a = set(a)
a = sorted(a,key = int)
s=" ".join(a)
print(s)
有帮助点个采纳,谢谢