【问题标题】:'\n' is getting added at the end of each line in a dictionary [duplicate]'\n' 被添加到字典中每一行的末尾[重复]
【发布时间】:2018-10-02 03:12:45
【问题描述】:

我有一个文本文件sample.txt,其中包含以下数据:

Name of Person: John
Age: 24 years
Height: 170 cm
Weight: 64 kg

我的代码是:

list_for_dictionary = []
filename='sample.txt'
f = open(filename)

for line_number, line in enumerate(f, 1):
    key="data_values"
    dictionary = {key: {"fileLine": line, "lineNumber": int(line_number), "fileName": filename}}
    list_for_dictionary.append(dictionary)
print(list_for_dictionary)

我得到的输出是:

[{'data_values': {'fileLine': 'Name of Person: John\n', 'lineNumber': 1, 'fileName': 'sample.txt'}}, {'data_values': {'fileLine': 'Age: 24 years\n', 'lineNumber': 2, 'fileName': 'sample.txt'}}, {'data_values': {'fileLine': 'Height: 170 cm\n', 'lineNumber': 3, 'fileName': 'sample.txt'}}, {'data_values': {'fileLine': 'Weight: 24kgs', 'lineNumber': 4, 'fileName': 'sample.txt'}}]

我的问题是为什么'\n' 会被添加到fileLine 的每一行末尾,我该如何摆脱它?'

【问题讨论】:

  • 使用 line.strip(),\n 是换行。您的文件记录包含行值。这就是为什么你会得到一个\n。
  • 他们来自for line in f,或者来自f.readlines(),这样;它不会在其他任何地方“被添加”,而是始终使用基于迭代器的接口在 Python 中读取文本文件的一部分。

标签: python python-3.x dictionary text data-extraction


【解决方案1】:

line.strip() 用作您的{'fileLine': line.strip()}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-09-11
    • 2016-01-03
    • 2015-03-20
    • 2011-07-15
    • 1970-01-01
    • 1970-01-01
    • 2014-08-22
    相关资源
    最近更新 更多