删除 Python 中的空格

Removing blanks in Python

我是 Python 的新手,所以我想尽可能简单。我正在处理包含我必须映射到 Mapreduce 的数据的 CSV 文件。在我的映射器部分,我得到了空白数据,这不允许我减少。这是因为 CSV 文件中有空白。我需要有关如何删除 Mapper 中的空白的建议,以便它不会进入我的 Reducer。

Example of my result.
BLUE 1
GY  1
WT  1
    1
WH  1
    1
BLACK   1
    1
GN  1
BLK 1
BLACK   1
RED 1

我的代码

#!/usr/bin/python

from operator import itemgetter
import sys

sys_stdin = open("Parking_Violations.csv", "r")

for line in sys_stdin:
    line = line.split(",")
    vehiclecolor = line[33]          #This is the column in CSV file where data i need is located.

    try:                                                     
        issuecolor = str(vehiclecolor)
        print("%s\t%s" % (issuecolor, 1))

     except ValueError:
        continue

您可以使用内置 string.strip 函数

#!/usr/bin/python

from operator import itemgetter
import sys
from typing import List, Any

sys_stdin = open("Parking_Violations.csv", "r")

for line in sys_stdin:
    vehiclecolor = line[33].strip()

    if vehiclecolor:
        issuecolor = str(vehiclecolor)
        print("%s\t%s" % (issuecolor, 1))

它所做的是获取第 33 行并从中删除所有空格 .strip()。这假设您的文件实际上有 33 行,否则会引发异常。

然后它通过 if 检查 vehiclecolor 是否有任何字符,只有在有值时才打印它。

在 Python 中,空字符串的表达式被识别为 "false"。