python file into list

要写一个函数用来打开csv文件像是 di_fun("balabala.csv")
这个csv文件中有4列分别是 名字, 电话, 颜色以及邮箱.
我希望我的输出是一个list但是不包含颜色那一列并且去除每列之间的空格。
例子:

di_fun("balabala.csv")
[('Name1', '139-balabala', 'balabala@qq.com'),
('Name2', '150-balabala', 'balabala@yahoo.com')]

(不能使用import)

下有代码,可直接复制使用。如有帮助,敬请采纳,你的采纳是我前进的动力,O(∩_∩)O谢谢!!!!!!!!
特别要求:不能使用import
代码如下:

csv_lines = open('bala.csv', 'r', encoding='utf-8').readlines()
for line in csv_lines:
    line = line.strip()
    if True in list(map(lambda x: x in line.split(','), ['name', 'phone', 'color', 'email'])) or line == '':
        continue
    csv_list = line.split(',')
    out_csv = [csv_list[0], csv_list[1], csv_list[3]]
    print(out_csv)

结果截图

img

def di_re(fp):
    cont=[]
    with open(fp,'r',encoding='utf-8') as f:
        for a in f.readlines()[1:]:
            a=a.strip().split(',')
            cont.append((a[0],a[1],a[3]))
    return cont    

F:\2022\py01>t19
[('name1', 'phone1', 'email1'), ('name2', 'phone2', 'email2')]

img

img


你题目的解答代码如下:

def di_fun(fn):
    res=[]
    with open(fn,'r',encoding='utf-8') as f:
        for line in f.readlines()[1:]:
            li = line.split(',')
            t = tuple(v.strip() for i,v in enumerate(li) if i!=2)
            res.append(t)
    return res

li = di_fun("balabala.csv")
print(li)

如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

img

最好给出具体文件数据吧,不然不好测试

可以看看我发的pm2.5的预测视频看看,里面也有类似代码的讲解,去掉多余列