Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 仅将textfile信息的第一部分追加到数组中_Python_Arrays_Text - Fatal编程技术网

Python 仅将textfile信息的第一部分追加到数组中

Python 仅将textfile信息的第一部分追加到数组中,python,arrays,text,Python,Arrays,Text,我试图在python上将一个大的数据文件读入一个数组,然后在上面进行一些计算。我将文本文件的每一行分开,然后使用.append()函数将每一行读入一个数组 但是我不想要整条线。这是文本文件每行包含的内容 1000661813$10006618$1$PS$LIPITOR$ATORVASTATIN CALCIUM$1$$UNK$$$U$$$$020702$$$FILM-COATED TABLET$ 我只想要第一位“1000661813”。$将信息的不同部分分开。每行的第一个数字的长度可能不同。有没

我试图在python上将一个大的数据文件读入一个数组,然后在上面进行一些计算。我将文本文件的每一行分开,然后使用.append()函数将每一行读入一个数组

但是我不想要整条线。这是文本文件每行包含的内容

1000661813$10006618$1$PS$LIPITOR$ATORVASTATIN CALCIUM$1$$UNK$$$U$$$$020702$$$FILM-COATED TABLET$
我只想要第一位“1000661813”。$将信息的不同部分分开。每行的第一个数字的长度可能不同。有没有办法把每一行读入一个数组,使它只成为第一个数字

不知道从哪里开始

fileDrug19Q2 = open('DRUG19Q2.txt')

arrayDrug19Q2 = list()

for line in fileDrug19Q2:
    arrayDrug19Q2.append(line)

在添加到列表之前,可以尝试使用拆分函数,如下所示:

 for line in fileDrug:
   arrayDrug19Q2.append(line.split("$")[0])    

您的意思是您要获取的数字始终是行中的第一个,并由第一个
$
分隔?最简单的选项是
text.split(“$”)[0]
。否则,请查看正则表达式:我不知道性能上的差异,但是
line.partition(“$”)[0]
是另一种选择。它可能会更快,因为它会在第一次出现字符串后停止。尽管如此,使用
line.split(“$”,1)
也是一个选项。