社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

Alex Bogomolov

Alex Bogomolov 最近创建的主题
Alex Bogomolov 最近回复了
6 年前
回复了 Alex Bogomolov 创建的主题 » python zip函数从文件中删除太多项

让我们试着解构你的代码。 你在奖品列表和电子邮件列表的第一项中找到匹配项,对吗?然后从奖品列表中删除每个给定的奖品。然后,如果您还有任何奖品,您可以将其添加到奖品文件中。

prize_list = ['p1', 'p2', 'p3', 'p4', 'p5', 'p6']
email_list = ['e1', 'e2', 'e3', 'e4']

matches = list(zip(prize_list, email_list))

for prize, winner in matches:
    print(f'{prize} goes to {winner}')
    print("Before: ", prize_list)
    print('removing', prize)
    prize_list.remove(prize)
    print('{} prizes left'.format(len(prize_list)))

prize_file = 'prizeFile.txt'
with open(prize_file, "w") as file_:
    for prize in prize_list:
        file_.write(prize)
        file_.write('\n')

输出:

p1 goes to e1
Before:  ['p1', 'p2', 'p3', 'p4', 'p5', 'p6']
removing p1
5 prizes left
p2 goes to e2
Before:  ['p2', 'p3', 'p4', 'p5', 'p6']
removing p2
4 prizes left
p3 goes to e3
Before:  ['p3', 'p4', 'p5', 'p6']
removing p3
3 prizes left
p4 goes to e4
Before:  ['p4', 'p5', 'p6']
removing p4
2 prizes left
After: ['p5', 'p6']