python题【问题描述】 9个同学一起做游戏,每个人报一个[1,20]区间上的正整数,请你编程求出有多少个不同的数。 【输入形式】 输入1行,输入9个[1,20]区间上的整数,每个整数之间以空格为分隔符 【输出形式】 输出1个数,表示输入的9个数中不同数的个数。 【样例输入】 1 2 3 3 2 2 7 8 9 【样例输出】 6 【样例说明】可以使用字符串的split()方法将一个字符串按照指定字符切割成字符列表
时间: 2023-05-21 11:01:50 浏览: 229
可以使用Python中的set()函数来去除重复元素,然后再计算集合的长度即可。
代码如下:
```python
nums = input().split()
distinct_nums = set(nums)
print(len(distinct_nums))
```
输入样例:
```
1 2 3 3 2 2 7 8 9
```
输出样例:
```
6
```
相关问题
python: 9个同学一起做游戏,每个人报一个[1,20]区间上的正整数,请你编程求出有多少个不同的数。
可以使用set数据结构来去重,代码如下:
```python
nums = set()
for i in range(9):
num = int(input("请输入第{}个同学报的数字:".format(i+1)))
if num >= 1 and num <= 20:
nums.add(num)
print("不同的数字个数为:", len(nums))
```
输入每个同学报的数字后,将其加入set中,最后输出set的长度即可。
用python写9个同学一起做游戏,每个人报一个[1,20]区间上的正整数,请你编程求出有多少个不同的数。
好的,您的要求已经明确了。以下是Python实现代码:
```
numbers = []
for i in range(9):
number = int(input(f"请输入第{i+1}个同学报的数字:"))
if number >= 1 and number <= 20:
numbers.append(number)
unique_numbers = set(numbers)
print(f"总共有{len(unique_numbers)}个不同的数字:{unique_numbers}")
```
该代码会循环9次,每次让一个同学输入一个数字,然后将其添加到列表 `numbers` 中。最后使用 `set` 函数将列表中的元素去重,再输出去重后的元素个数和列表内容。
注意:为了方便起见,代码中没有添加错误处理,实际使用中需要根据具体情况进行添加。
阅读全文