Python - 读取TXT文件行 - >排列

时间:2014-07-09 13:36:06

标签: python mysql file-io

我需要用Python打开一个文本文件,然后逐行读取这个Text文件,把它放到一个arrary中。后来我想将该数组中的每个内容写入数据库。 到目前为止,这是我的代码:

#!/usr/bin/python
# -*- coding: utf8 -*-

#importieren der Module
import MySQLdb
import sys
import re          # regex
import codecs      # utf8 support

# Datei file einlesen
names = []
fo = open("file.txt", "r")
print "Name of file:", fo.name
for line in fo:
    line = line.strip()

fo.close()

我该怎么做? 将文本行插入数组的正确命令是什么?

2 个答案:

答案 0 :(得分:1)

如果我理解正确,您的文本文件如下所示:

E YD6567 E YD9876 E YD9867 等...

你希望删除" E"只需存储" YD ####"在列表中。你的循环将如下所示:

for line in fo:
    names.append(line.replace('E ', '')

"追加" function将项添加到列表中。 "替换"函数将您指定的字符串的任何部分替换为您指定的任何其他部分(在这种情况下,替换" E"没有任何内容,有效地将其从字符串中删除)。

如果您想存储整行(包括" E"),它就像以下一样简单:

for line in fo:
    names.append(line)

答案 1 :(得分:-1)

lines = []
with open('file.txt', 'r') as f:
    lines = f.readlines()

这应该会为您提供代码中所有行的列表。这假定您的文本文件是多行的,并且不包含单行上的所有文本。如果文本IS在一行上,您可以使用此代码创建行列表。

splitOn = '\n'
fd = open('file.txt', 'r')
lines = fd.read().split(splitOn)

如果有一些其他符号标记行的末尾而不是换行符,则可以将splitOn更改为要拆分字符串的任何字符。