题目 2 随机整数列表游戏 编写程序文件 cx2.py,实现如下性能:
1)定义一个函数 Pzc(n),判断整数 n 是否能同时被 3 整除。
2)定义一个函数 Lst(n), 性能是生成一个元素由 n 个 0 -100 之间随机整数形成的列表。
3)利用下面的函数,生成一个由 15 个 100 以内正整数形成的列表 A,找出该列表中能同时被 3 整除的元素放到列表 B 中,统计个数并按从小到大的程序显示进去。显示格局如下图示例:
sort() 函数用于对原列表进行排序,如果指定参数,则应用比拟函数指定的比拟函数。语法
sort()办法语法:list.sort(cmp=None, key=None, reverse=False)
参数
cmp -- 可选参数, 如果指定了该参数会应用该参数的办法进行排序。key -- 次要是用来进行比拟的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。reverse -- 排序规定,reverse = True 降序,reverse = False 升序(默认)。返回值
该办法没有返回值,然而会对列表的对象进行排序。
因为每个 Python 模块(Python 文件)都蕴含内置的变量__name__,当运行模块被执行的时候,__name__等于文件名(蕴含了后缀.py)。如果 import 到其余模块中,则__name__等于模块名称(不蕴含后缀.py)。而“main”等于以后执行文件的名称(蕴含了后缀.py)。所以当模块被间接执行时,name == ‘main’后果为真;而当模块被 import 到其余模块中时,name == ‘main’后果为假,就是不调用对应的办法。
简而言之就是:name 是以后模块名,当模块被间接运行时模块名为 main。当模块被间接运行时,代码将被运行,当模块是被导入时,代码不被运行。
import random
#判断整数 n 是否能同时被 3 整除
def Pzc(n):
if n%3==0:
return 1
else:
return 0
#生成一个元素由 n 个 0 -100 之间随机整数形成的列表。def Lst(n):
ss=[random.randint(0,100) for i in range(n)]
return ss
def main():
B=[]
A=Lst(15)
print("随机生成的列表 A 为:",A)
for m in A:
if Pzc(m)==1:
B.append(m)# 在列表开端增加新的对象 list.append(erd)
B.sort()# 具体用法见上文
print("A 列表中有 {} 个数能被 3 整除, 别离是{}:".format(len(B),B))
main()# 可由上面的正文替换
'''if __name__ =='__main__':
main()'''