相关疑难解决方法(0)

如何在Python中删除尾部换行符?

什么是Perl chomp函数的Python等价物,如果它是换行符,它会删除字符串的最后一个字符?

python newline trailing

1593
推荐指数
22
解决办法
167万
查看次数

如何将文本文件读入字符串变量并删除换行符?

我使用以下代码段来读取python中的文件:

with open ("data.txt", "r") as myfile:
    data=myfile.readlines()
Run Code Online (Sandbox Code Playgroud)

输入文件是:

LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN
GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE
Run Code Online (Sandbox Code Playgroud)

当我打印数据时,我得到了

['LLKKKKKKKKMMMMMMMMNNNNNNNNNNNNN\n', 'GGGGGGGGGHHHHHHHHHHHHHHHHHHHHEEEEEEEE']
Run Code Online (Sandbox Code Playgroud)

我看到数据的list形式.我如何使它成为字符串?而且我怎么删除"\n","["以及"]"从中字符?

python

875
推荐指数
14
解决办法
118万
查看次数

使用.readlines()时摆脱\n

我有一个包含值的.txt文件.

值如下所示:

Value1
Value2
Value3
Value4
Run Code Online (Sandbox Code Playgroud)

我的目标是将值放在列表中.当我这样做时,列表看起来像这样:

['Value1\n', 'Value2\n', ...]

\n是没有必要的.

这是我的代码:

t = open('filename.txt', 'r+w')
contents = t.readline()

alist = []

for i in contents:
    alist.append(i)
Run Code Online (Sandbox Code Playgroud)

python readline python-2.7

209
推荐指数
8
解决办法
28万
查看次数

读取换行符分隔文件和丢弃换行符的最佳方法?

我正在尝试确定在Python中读取换行符分隔文件时处理删除换行符的最佳方法.

我想出的是以下代码,包括要测试的一次性代码.

import os

def getfile(filename,results):
   f = open(filename)
   filecontents = f.readlines()
   for line in filecontents:
     foo = line.strip('\n')
     results.append(foo)
   return results

blahblah = []

getfile('/tmp/foo',blahblah)

for x in blahblah:
    print x
Run Code Online (Sandbox Code Playgroud)

建议?

python file readline

82
推荐指数
4
解决办法
10万
查看次数

删除从文件中读取的列表中的换行符

我有一个简单的程序,它带有一个ID号,并为匹配ID的人打印信息.信息存储在.dat文件中,每行一个ID号.

问题是我的程序也在从文件中读取换行符\n.我尝试了'name'.split()方法,但这似乎不适用于列表.

我的节目:

from time import localtime, strftime

files = open("grades.dat")
request = open("requests.dat", "w")
lists = files.readlines()
grades = []

for i in range(len(lists)):
    grades.append(lists[i].split(","))

cont = "y"

while cont == "y" or cont == "Y":
    answer = raw_input("Please enter the Student I.D. of whom you are looking: ")
    for i in range(len(grades)):
        if answer == grades[i][0]:
            print grades[i][1] + ", " + grades[i][2] + (" "*6) + grades[i][0] + (" "*6) + grades[i][3]
            time = strftime("%a, %b %d …
Run Code Online (Sandbox Code Playgroud)

python newline list

35
推荐指数
3
解决办法
17万
查看次数

使用Python从文本文件中读取行的行尾字符

使用python从文本文件中读取行时,通常需要在处理文本之前截断行尾字符,如下例所示:

f = open("myFile.txt", "r")
for line in f:
    line = line[:-1]
    # do something with line
Run Code Online (Sandbox Code Playgroud)

是否有一种优雅的方式或习惯用于检索没有终结字符的文本行?

python

30
推荐指数
4
解决办法
10万
查看次数

a = open("file","r"); 没有\n的a.readline()输出

我即将编写一个能够读取txt文件的python脚本,但是使用readline()总会有\n输出.如何从变量中删除它?

a = open("file", "r")
b = a.readline()
a.close()
Run Code Online (Sandbox Code Playgroud)

python

19
推荐指数
2
解决办法
6万
查看次数

从文件读取行而不在末尾附加"\n"

我的文件是"xml.txt",内容如下:

books.xml 
news.xml
mix.xml
Run Code Online (Sandbox Code Playgroud)

如果我使用readline()函数,它会在所有文件的名称后附加"\n",这是一个错误,因为我想打开xml.txt中包含的文件.我写了这个:

fo = open("xml.tx","r")
for i in range(count.__len__()): #here count is one of may arrays that i'm using
    file = fo.readline()
    find_root(file) # here find_root is my own created function not displayed here
Run Code Online (Sandbox Code Playgroud)

运行此代码时遇到错误:

IOError: [Errno 2] No such file or directory: 'books.xml\n'
Run Code Online (Sandbox Code Playgroud)

python linux file-io ubuntu-10.04

12
推荐指数
3
解决办法
5万
查看次数

如何在文件读取期间从每一行中删除换行符?

我正在从包含一个[*]字/行的文件中读取行,例如:

dog
cat
person
tree
Run Code Online (Sandbox Code Playgroud)

每个单词还包含换行符\n.我想将它们读入列表并丢弃换行符.我设计的方法是阅读,readlines()然后将列表处理到strip()换行符:

with open('words.txt') as f:
    words = f.readlines()

for index, word in enumerate(words):
    words[index] = word.strip()
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我不禁想到有一种更有效的方法来执行此操作,在读取过程中去除换行符.但我找不到办法.是否有更高效的东西(同时也考虑可读性等)

[*]更新:我应该提到某些行可能包含多个单词,但在这些情况下,行中的许多单词应该包含在单个列表项中.到目前为止,这两个答案都处理这个问题(就像我自己的代码一样),但我想提一下.

python string file-io

5
推荐指数
2
解决办法
2万
查看次数

将文件读入列表并删除换行符

我在将文件读入列表时遇到问题,当我这样做时,只会从整个文件创建一个项目,而不是将每个元素读入自己的字段.我正在使用\n剥离的东西,但我不能让它正常工作.

temp = open('drugs')
drugs = [temp.read().strip("\n")]
temp.close
Run Code Online (Sandbox Code Playgroud)

结果:

['40 Stimpak\n53 Mentats\n87 Buffout\n109 Rad-X\n125 Booze\n260 Jet Antidote\n311 Roentgen Rum\n424 Monument Chunk\n480 Bonus +1 Agility\n525 Hypo \n48 RadAway\n71 Fruit\n103 Iguana-on-a-stick\n110 Psycho\n144 Super Stimpak\n273 Healing Powder\n334 Poison\n469 Rot Gut\n481 Bonus +1 Intelligence \n49 Antidote\n81 Iguana-on-a-stick\n106 Nuka-Cola\n124 Beer\n259 Jet\n310 Gamma Gulp Beer\n378 Cookie\n473 Mutated Toe\n482 Bonus +1 Strength ']
drugs.strip('\n')

Traceback (most recent call last):
   File "seek", line 18, in <module>
     print drugs.strip('\n')
AttributeError: 'list' object has no attribute 'strip'
Run Code Online (Sandbox Code Playgroud)

python list strip

5
推荐指数
2
解决办法
2万
查看次数

file.readlines()留下空白行

我已经阅读了file.readlines逐行读取整个文件并将其存储在列表中.如果我有这样的文件 -

Sentence 1
Sentence 2
Sentence 3
Run Code Online (Sandbox Code Playgroud)

我用它readlines来打印每个句子 -

file = open("test.txt") 
for i in file.readlines():
    print i
Run Code Online (Sandbox Code Playgroud)

输出是

Sentence 1

Sentence 2

Sentence 3
Run Code Online (Sandbox Code Playgroud)

我的问题是为什么我在每个句子之间得到额外的界限,我怎么能摆脱它呢?如果这个问题非常愚蠢,请原谅我,但我对Python不是很有经验.

UPDATE

我发现使用i.strip也删除了多余的线,为什么会发生这种情况?据我所知,split删除字符串末尾和字符串开头的空格.

python string file-io

4
推荐指数
1
解决办法
9320
查看次数

在python中没有尾随换行符的情况下读取文件?

所以我决定使用这段代码:

CaseList = []
f_Case = open("C:/Users/Luke Roberts/Desktop/Lists/CaseList.txt", "r")
for line in f_Case:
    CaseList.append(line)
print(CaseList)
Run Code Online (Sandbox Code Playgroud)

但是,当我打印列表时,它出现为:

['Case 1\n', 'Case 2\n', 'Case 3\n', 'Case 4\n', 'Case 5']
Run Code Online (Sandbox Code Playgroud)

有没有办法将它添加到列表中而没有'\n'?如果没有,有没有办法从每个字符串中删除'\n'?

任何和所有的帮助表示赞赏!干杯

python file-io file list

-1
推荐指数
1
解决办法
90
查看次数

标签 统计

python ×12

file-io ×4

list ×3

file ×2

newline ×2

readline ×2

string ×2

linux ×1

python-2.7 ×1

strip ×1

trailing ×1

ubuntu-10.04 ×1