产生具有n个0至20之间随机元素值列表,求奇数与偶数的个数,用python和fn函数
时间: 2024-02-20 17:02:16 浏览: 25
使用Python可以使用random模块生成随机数,再使用列表推导式生成随机数列表,最后使用filter函数过滤出奇数和偶数,再用len函数计算个数。
```
import random
# 生成随机数列表
lst = [random.randint(0, 20) for _ in range(n)]
# 使用filter函数过滤出奇数和偶数
odd_lst = list(filter(lambda x: x % 2 == 1, lst))
even_lst = list(filter(lambda x: x % 2 == 0, lst))
# 计算个数
odd_count = len(odd_lst)
even_count = len(even_lst)
```
使用fn函数可以使用fn.generate函数生成随机数列表,再使用fn.filter函数过滤出奇数和偶数,最后使用fn.count函数计算个数。
```
import fn
# 生成随机数列表
lst = fn.generate(lambda: random.randint(0, 20), n)
# 使用fn.filter函数过滤出奇数和偶数
odd_lst = fn.filter(lambda x: x % 2 == 1, lst)
even_lst = fn.filter(lambda x: x % 2 == 0, lst)
# 计算个数
odd_count = fn.count(odd_lst)
even_count = fn.count(even_lst)
```
相关问题
用python编写函数产生具有n个0至20之间随机元素的列表求奇数与偶数的个数
好的,下面是用 Python 编写的函数,可以产生具有 n 个 0 至 20 之间随机元素的列表,并求出其中奇数与偶数的个数:
```python
import random
def count_odd_even(n):
# 产生 n 个 0 至 20 之间的随机数
nums = [random.randint(0, 20) for i in range(n)]
print("生成的随机数列表为:", nums)
# 计算奇数与偶数个数
odd_count = 0
even_count = 0
for num in nums:
if num % 2 == 0:
even_count += 1
else:
odd_count += 1
print("奇数个数为:", odd_count)
print("偶数个数为:", even_count)
```
你可以调用这个函数,传入一个正整数 n,就可以得到一个具有 n 个 0 至 20 之间随机元素的列表,并计算其中奇数与偶数的个数。注意,函数中的 print 语句只是用于输出结果,实际使用时可以根据需要进行修改。
产生具有n个0至20之间随机元素值的列表,求奇数与偶数的个数,用python
可以使用Python中的random模块生成随机数,再通过遍历列表来统计奇数与偶数的个数。
以下是示例代码:
```python
import random
n = 10 # 列表中元素的个数
lst = [random.randint(0, 20) for i in range(n)] # 生成随机列表
print("随机列表:", lst)
even_count = 0 # 偶数个数
odd_count = 0 # 奇数个数
for num in lst:
if num % 2 == 0:
even_count += 1
else:
odd_count += 1
print("偶数个数:", even_count)
print("奇数个数:", odd_count)
```
运行结果可能如下所示:
```
随机列表: [10, 9, 16, 20, 13, 7, 3, 18, 17, 8]
偶数个数: 5
奇数个数: 5
```