我想在名为'names'的.txt文件中列出名称,例如“john,jack,daniels,whiskey,susan,alex”。
现在,我想将该文件导入我的“脚本”并使用导入随机模块。
这就是我所拥有的:
import random
name = ( "jay" , "luis" , "bob" , "sofi", "susan" )
x = random.sample(name,input( "please enter the number of volunteers needed" ))
print x
而不是name = ( xxxxxxxxxxxxx )
,我想拥有name = .txt文件。
每次我想更改名称时,我都可以在.txt文件中更改它。
我正在尝试为我的学校志愿者俱乐部制作一个计划,因此所选择的志愿者数量是随机的,没有偏见。这样每个人都有一个相当公平的机会。 :
答案 0 :(得分:3)
file = open('myFile.txt', 'r')
names = file.read().split(',')
file.close()
用它替代name = ...
行,你应该好好去。
您可以阅读有关使用Python here读取和编写文件的更多信息。
请注意,我假设您在文件中有一个以逗号分隔的列表。您也可以将每个名称放在一个单独的行上,而是改为names = file.readlines()
。
答案 1 :(得分:2)
欢迎来到python: - ]
这样的事情怎么样?
import random
fid = open('names.txt', 'r')
names = fid.readlines()
number_needed = raw_input('please enter the number of volunteers needed: ')
print random.sample(names, int(number_needed))
答案 2 :(得分:1)
您只需填写一个文字文件,其名称由行分隔:
with open('names.txt') as f:
names = f.read().splitlines()
答案 3 :(得分:0)
假设names.txt
中有一个名单,每行一个(并且那里没有一亿个名字):
import random
number_of_volunteers = 4
print random.sample([n[:-1] for n in open("./names.txt").readlines()], number_of_volunteers)
答案 4 :(得分:0)
其中:
$ cat rand_nms.txt
jay
luis
bob
sofi
然后:
import random
contents=[]
with open("rand_nms.txt") as rnd:
for line in rnd:
line=line.strip()
contents.append(line)
print contents
print "random name:", contents[random.randint(0,len(contents)-1)]
结果:
['jay', 'luis', 'bob', 'sofi', 'susan']
random name: luis