python - 删除文件python的空白空间

标签 python file spaces

我有一个包含多行的文件,其中一些有空格。

x=20
y=3
z = 1.5
v = 0.1

我想删除这些空格并将每一行放入一个字典中,其中“=”符号之前的元素将是键,“=”符号之后的元素将是它的值。

但是,我的代码不起作用,至少“删除空格”部分不起作用。这是代码:

def copyFile(filename):
    """
    function's contract
    """
    with open(filename, 'r') as inFile:
        for line in inFile:
            cleanedLine = line.strip()
            if cleanedLine:
                firstPart, secondPart = line.split('=')  
                dic[firstPart] = float(secondPart)
        inFile.close()
    return dic

清除空格后,我的文件应该是这样的

x=20
y=3
z=1.5
v=0.1

但是不工作。我做错了什么?

最佳答案

拆分字符串后需要strip。这是假设唯一不需要的空格位于 = 周围或该行内容之前或之后。

from ast import literal_eval

def copyFile(filename):
    with open(filename, 'r') as inFile:
        split_lines = (line.split('=', 1) for line in inFile)
        d = {key.strip(): literal_eval(value.strip()) for key, value in split_lines}
    return d

关于python - 删除文件python的空白空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53820954/

相关文章:

python - 套接字错误 : [Errno 10054] An existing connection was forcibly closed by the remote host (python2. 7)

c - 在 Linux 上更新 PATH 变量

vim - 使用与上一行相同的字符将 vim 设置为自动缩进

java - 当其中包含空格时,无法构建有效的 URL

python - 如何在 map 函数中使用 strip

python - 如何通过 python 使用 smartystreets

java - 按最后一个数字升序对文件数组进行排序的正确方法

python - 将表格数据放入 python 中的最佳方法是什么?

perl - 在 Perl 中,如何将此 CSV 字符串中的字段放入不带空格的数组中?

python - 图像预处理和数据增强应该如何用于语义分割?