繁体   English   中英

阅读文本文件

[英]Reading Textfile

我有这段代码将随机数写入文本文件:

import random
members = 5
participants=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
random.shuffle(participants)
with open("myfile1.txt",'w') as tf:
    for i in range(len(participants) // members + 1):
         group = participants[i*members:i*members + members]
         for participant in group:
            tf.write(str(participant))
            tf.write("\n")

我试图用它来求和它给我的随机数

import numpy
data = numpy.loadtxt("myfile1.txt")
def MA1001():
    return(data[0:,0].sum())

但是,它给我“数组索引过多”错误吗? 有什么办法可以解决这个问题,还是有更好的方法? 谢谢!

但是,不能100%地确定要实现的目标:您在文件中每行写一个数字,并且loadtext将返回一个数组(形状(20,))。 因此,data.sum()就足够了。 没有第二个维度。

with open('myfile1.txt','r') as file:
    print (sum(map(int,file.read().splitlines())))

你可以尝试这个没有numpy的

如果您想使用numpy ,则只需执行以下操作:

#!/usr/bin/env python

import numpy as np

data = np.loadtxt("myfile1.txt")
def MA1001(data):
    print(data.sum())

MA1001(data)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM