题目截图如下。现在,把题目延伸一下,在输入任意一串正整数的时候,都会成功运行。这样,用户可能随意的输入数字,并用空格或逗号隔开。'3 6 19 18 9 8 7 36 36''3 , 3, 19,18,9,8, 7, 36, 36'
工具/原料
1
电脑
2
python3.6
方法/步骤
1
由于用户输入数字字符串的时候,可能随意的用逗号、空格进行分隔,而且空格的数目可能随意,数字的位数也可能是任意位数,所以,粗暴的使用split分割字符串,可能是错误的。不论用户使用的是什么符号进行分割,都把分隔符号替换为空格;用空格分割字符串,可能出现多个空字符;然后,去除空字符,并把字符串转化为整数。
2
由于d里面有重复元素,所以,为避免重复元素扰乱输出,把列表的重复元素删掉,并重新排序。
3
这样,就可以完成给定的题目。无论用户是使用空格分割数字,还是使用逗号(包括中文逗号、英文逗号),都可以返回正确的结果。
4
但是,一旦用户输入了违规的字符串,比如,除了数字、空格、逗号,还出现了字母,程序就会报错。原因是'3a'不能够转化为整数。
5
如果用户非得使用字母或者别的非数字字符来分割数字,怎么办?那就用空格替换掉所有的非数字字符。
注意事项
1
这样,即便用户在数字之间输入了违规字符串,程序也会自动把违规字符串剔除,不会影响运行结果。
2
具体代码可以在pan.baidu.com/s/1ugtgVmHnjxvNyKQaAsv8zw下载试玩,kv6u是下载密码。
上一篇:上班族怎样吃排毒餐
下一篇:python 中的函数与类