python 生成一组相同数字,随机数生成器在for循环Python中创建相同的数字

问题的简短回答是从readast()返回一批x、y、z,然后在distance()中迭代这些相同的值,而不改变它们15次。在

你似乎对文件和列表有点困惑(也许?)。我在这里都做过。open()调用在文件系统中打开一个文件并向其中写入文本。你这样实例化的列表:一些\-list=[]或者其他的\-list=[1,2,3]或者其他方式。。。写入文件时,文件中的当前位置将移到末尾。您可以使用seek()将当前位置移回文件中,但列表更好,除非您有数百万个这样的东西。如果您不需要这些文件,那么您可以注释掉引用它们的行,因为我们使用这里的列表在函数之间进行通信。希望这能给你指明正确的方向。。祝你好运。在import random

import math

def write_ast():

asteroids = open('asteroids.txt','w')

ast_list = []

letter = 'A'

for line in range(15):

x = random.randint(1,1000)

y = random.randint(1,1000)

z = random.randint(1,1000)

asteroids.write('%s\t%s\t%s\t%s\n' % (letter, x, y, z))

ast_list.append((letter, x, y, z))

letter = chr(ord(letter) + 1)

return ast_list

def write_distance(ast_list):

distance = open('distance.txt','w')

dist_list = []

for letter, x, y, z in ast_list:

x1=x**2

y1=y**2

z1=z**2

distance_from_origin = math.sqrt(x1+y1+z1)

distance.write("%s\t%s\t%s\t%s\t%s\n" % (letter, x, y, z, distance_from_origin))

dist_list.append((letter, x, y, z, distance_from_origin))

return dist_list

ast_list = write_ast()

write_distance(ast_list)

你可能感兴趣的:(python,生成一组相同数字)