在Python中从字符串中提取子字符串并将其放入文件

在Python中从字符串中提取子字符串并将其放入文件,python,macos,Python,Macos,我有一个以下格式的文件 name@company.com, information name@company2.com, information .... 我需要做的是读取文件并将电子邮件地址仅输出到文件中。我创建了以下代码 with open ('n-emails.txt') as f: lines = f.readlines() print (lines) 有人能告诉我如何只获取文件的电子邮件部分以及如何将其输出到文件吗?这都是在mac上完成的。2种不同的方法: 无csv模块:读

我有一个以下格式的文件

name@company.com, information
name@company2.com, information
....
我需要做的是读取文件并将电子邮件地址仅输出到文件中。我创建了以下代码

with open ('n-emails.txt') as f:
  lines = f.readlines()
  print (lines)

有人能告诉我如何只获取文件的电子邮件部分以及如何将其输出到文件吗?这都是在mac上完成的。

2种不同的方法:

csv
模块:读取每一行,根据标记拆分,去除空白,打印:

with open ('n-emails.txt') as f:
  for line in f:
    toks = line.split(",")
    if toks:
        print(toks[0].strip())
使用csv模块,将打开的文件映射到csv读取器上,在行上迭代,打印第一行(剥离)


第二种方法的优点是对单元格、引号等中包含的逗号具有鲁棒性。。。这就是我推荐它的原因。

awk-F,'{print$1}'n-emails.txt>newfile.txt
我在mac上没有awk,我需要使用pythonUse
company=split.line(',')
company[0]
中为F.readlines()中的每一行获取公司信息:
@Jean-franoise fabre这是一个标准文本文件,不是包含列的.csv文件。我不认为它是复制品。应该重新开放。简单的分开会更好。这是对其他问题的重复。而且没有努力,没有提供代码:反正太宽了。非常感谢。我能再问一次吗。。第一个cara是“>”,我怎样才能删除它,这样我就只有eamail地址了
import csv
with open ('n-emails.txt') as f:
    cr = csv.reader(delimiter=",")
    for row in cr:
        print(row[0].strip())