Arrays Python 3将文件读取到数组,间隔为每秒:

Arrays Python 3将文件读取到数组,间隔为每秒:,arrays,python-3.x,file,Arrays,Python 3.x,File,我有一个这样格式化的文本文件 0 :text here: 1 :some text here: 2 :more text here: 我需要能够获取两个冒号内的文本,并将它们放入数组的下一个元素中,同时忽略前面的行号,即0、1和2。这些行号用于指示将要放置的文本的数组位置 所以我的结果数组应该是这样的 array[0] == "text here" array[1] == "some text here" array[2] == "more text here" 我更喜欢语法上容易理解的解决

我有一个这样格式化的文本文件

0 :text here:
1 :some text here:
2 :more text here:
我需要能够获取两个冒号内的文本,并将它们放入数组的下一个元素中,同时忽略前面的行号,即0、1和2。这些行号用于指示将要放置的文本的数组位置

所以我的结果数组应该是这样的

array[0] == "text here"
array[1] == "some text here"
array[2] == "more text here"

我更喜欢语法上容易理解的解决方案。

这似乎很有效,对我来说最有意义

import csv

array = []

with open('text.txt') as csv_file:
    csv_reader = csv.reader(csv_file, delimiter=':') # splits data at :
    for row in csv_reader: # Iterate through each row of file
        array.append(row[1]) # Grab second element in the row
    print("array: ", array)
输出应该是


数组:['text here','some text here','more text here']

这似乎很有效,对我来说最有意义

import csv

array = []

with open('text.txt') as csv_file:
    csv_reader = csv.reader(csv_file, delimiter=':') # splits data at :
    for row in csv_reader: # Iterate through each row of file
        array.append(row[1]) # Grab second element in the row
    print("array: ", array)
输出应该是


数组:['text here'、'some text here'、'more text here']

忽略前面的行号时,您是什么意思?
[val for idx,val in enumerate(s.split(“:”)如果idx%2==1]
您可以使用@dekauliya建议的
split()
方法,也可以使用
import re;关于findall(“:(.+):”,我的字符串)
。如果您决定使用正则表达式,则可能需要根据分隔字符串行的字符种类对模式进行一定程度的修改。忽略前面的行号时,这是什么意思?
[val for idx,val in enumerate(s.split(:”)如果idx%2==1]
您可以使用
split()
方法,如@dekauliya所建议的,或者您也可以使用正则表达式,如
import re;关于findall(“:(.+):”,我的字符串)
。如果您决定使用正则表达式,则可能需要根据分隔字符串行的字符的类型对模式进行一定程度的修改。