【问题标题】:Extract elements in format from list从列表中提取格式元素
【发布时间】:2020-06-30 17:26:50
【问题描述】:

从下面的 csv 中提取

1,'Chaks, Raj','$300,000', False
2,'Chen, Joe','$250,000', False
3,'Kumar, Harry','$240,000', True

我正在遍历列表,第一个列表在下面

M = ['1', "'Chaks", " Raj'", "'$300", "000'", ' False']

代码如下

for i in M:
   empid = i[0]
   print (empid)
   name = row[1].replace(',','').replace('$','') if row[1] else '-'
   print (name)
   salary = row[3].replace(',','').replace('$','') if row[3] else 0
   print ('salary',salary)

预计结束

1
Chaks Raj
300000



   

【问题讨论】:

    标签: python list csv


    【解决方案1】:

    我建议您在此处添加更明确的描述,说明您要达到什么目的,或者您的具体问题是什么。

    无论如何,稍微解释一下您的问题,我了解您希望避免在 CSV 中使用 ',' 解析值。

    我建议您使用 csv 模块来执行此操作,因此您最终会得到这样的结果:

    import csv
    
    lines = '''1,'Chaks, Raj','$300,000', False
            2,'Chen, Joe','$250,000', False
            3,'Kumar, Harry','$240,000', True'''.splitlines()
    
    for l in csv.reader(lines, delimiter=',', quotechar="'", quoting=csv.QUOTE_ALL, skipinitialspace=True):
        print('\n'.join(l))
    

    请注意我是如何传递 quotechar="'" 键/值参数的,因此读者使用这种引号来分隔 CSV 中的值。

    有关此模块的更多文档,请参阅https://docs.python.org/3/library/csv.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-08-23
      • 2015-03-24
      • 2023-01-28
      • 2022-01-04
      • 2018-08-30
      • 1970-01-01
      相关资源
      最近更新 更多