作业一
方法一
import random # 导入random
li = [] # 初始化列表li 为空列表
N = int(input("请输入随机生成整数的个数N(1<= N <=1000): ")) # 输入N
def random_numbers(): # 定义random_numbers
number = random.randint(1, 1000) # 得到1~1000内随机一个整数
li.append(number) # 将得到的随机整数加入列表li
for i in range(1, N): # 根据N值控制遍历次数
random_numbers() # 调用random_numbers
li2 = list(set(li)) # 去重
li2.sort() # 升序
print(li2) # 输出打印生成的整数
方法二
方法二随机生成的N个数都不重复,不必去重
import random # 导入random
li = list(range(1, 1001)) # 初始化列表li
li_2 = list(map(str, li)) # 将列表元素转换为字符串
N = int(input("请输入随机生成整数的个数N(1<= N <=1000): ")) # 输入N
li_3 = random.sample(li_2, N) # 从li_2中随机挑选N个值,并生成列表li_3
li_4 = list((map(int, li_3))) # 将li_3中元素转换为整型,并生成列表li_4
li_4.sort() # 升序
print(li_4) # 打印输出
作业二
方法一
li = list(range(100, 1000)) # 初始化列表li
for i in li: # 遍历列表li
x = (i // 100) ** 3 # 求模 得到百位数字并进行立方
y = (i % 100 // 10) ** 3 # 计算得到十位数字并进行立方
z = (i % 10) ** 3 # 计算得到个位数字并进行立方
if x + y + z == i: # 判断是否为水仙花数
print(f"找到一个水仙花数:{i}") # 是 则输出打印水仙花数
方法二
li = list(range(100, 1000)) # 初始化列表li
for i in li: # 遍历列表li
str_i = str(i) # 将i转成字符串
x = int(str_i[0]) ** 3 # 取字符串下标0 值(百位) 并转成整型再进行立方计算
y = int(str_i[1]) ** 3 # 取字符串下标1 值(十位) 并转成整型再进行立方计算
z = int(str_i[2]) ** 3 # 取字符串下标2 值(个位) 并转成整型再进行立方计算
if x + y + z == i: # 判断是否为水仙花数
print(f"找到一个水仙花数:{i}") # 是 则输出打印水仙花数