利用python:现在这份泄露数据保存在文件account.csv 中,文件包括 3 列,依次是用户名、密码、E-mail。编写程序,帮助林林根据这份文件中的 E-mail 找到他的账户,然后更改密码,并在屏幕上显示。更改规则为:英文字母小写和大写交换,非英文字符保持不变。
时间: 2024-05-07 12:17:57 浏览: 77
可以使用Python内置的csv模块来读取和操作csv文件。以下是一个可能的实现:
```python
import csv
email_to_update = "example@example.com"
new_password = ""
# 读取csv文件并查找匹配的E-mail
with open("account.csv", "r") as csvfile:
reader = csv.reader(csvfile)
for row in reader:
if row[2] == email_to_update:
# 找到匹配的E-mail,更改密码
old_password = row[1]
for c in old_password:
if c.isalpha():
new_password += c.swapcase() # 小写和大写交换
else:
new_password += c # 非英文字符保持不变
row[1] = new_password
# 在屏幕上显示新密码
print("Your new password is:", new_password)
# 将更改后的结果写回csv文件
with open("account.csv", "w", newline="") as csvfile:
writer = csv.writer(csvfile)
for row in reader:
writer.writerow(row)
```
在这个实现中,首先定义了要更新的E-mail和新密码。然后打开csv文件,使用csv.reader来遍历所有行,查找匹配的E-mail并更改密码。更改密码时,使用了str.swapcase()方法来交换英文字母的大小写,同时保持非英文字符不变。在屏幕上显示新密码后,再使用csv.writer将更改后的结果写回csv文件。
阅读全文