题:定义一个无参的方法完成以下功能:
a. 定义列表arr,列表元素为5个1-99(范围包含1-99) 之间的随机数
b. 提示用户输入一个2-5之间是数字num (num范围包含2和5,不需要代码判断)
c. 遍历列表arr, 删除列表中元素是num倍数的列表元素.
d. 打印删除后列表的剩余元素
import random
# a.定义列表arr,列表元素为5个1 - 99(范围包含1和99)之间的随机数
list = []
arr = [random.randint(1,99) for i in range(5)]
print('随机生成的数组元素为: %s ’ % arr )
b.提示用户输入一个2-5之间的数字num (num范围包括2和5,不需要代码判断)
num = int(input('请输入2-5之间的数字(包括2和5): '))
c.遍历列表arr,删除列表中元素是num倍数的列表元素。
for b in arr:
if b % num == 0 :
list.append(b)
for i in list:
arr.remove(i)
print(arr)
错误代码:
c.遍历列表arr,删除列表中元素是num倍数的列表元素。
for b in arr:
if b % num == 0 :
arr.remove(i)
print(arr)
知识点 : 原因 : 不可以边循环边删除,会出现意外问题
1.需要再建立个空列表用于储存需要删除的元素
2.遍历这个列表新建的用于储存删除元素的列表,然后再删除