python - Python代码问题-尝试创建一个脚本来定位文件,对其进行编辑并将其另存为新文件
问题描述
我正在尝试创建一个脚本来定位我的文本文件。一旦找到我的文本文件,它将解析文件中的数据,然后将该文件另存为新文件。
更具体地说,我有一个包含用户信息列表的文件,我希望我的脚本找到用户名,提取它,并将其保存为仅包含用户名的新文件。
infile = r"C:/Highrisk/userinfo.txt"
outfile = r"C:/Highrisk/parsed.txt"
lines = []
with open(infile, 'r') as f:
for line in f:
usernamestart = line.find('\\')
usernameend = line.find(':')
username = line[usernamestart+1:usernameend]
with open(outfile, 'w') as f:
for i in range(len(lines)):
f.write(lines[i])
当我执行此代码时,它只会删除我原始文件中的所有文本。
解决方案
使用 open 时,“w”用于写入,“r”用于读取。由于它无法读取文件,因此它只是遍历任何内容并将其解析为空文件。您需要这样授予它读取权限:
infile = r"C:\test\userinfo.txt"
outfile = r"C:test\parsed.txt"
lines = []
with open(infile, 'r') as f:
for line in f:
usernamestart = line.find('\\')
usernameend = line.find(':')
username = line[usernamestart+1:usernameend]
with open(outfile, 'w') as f:
for i in range(len(lines)):
f.write(lines[i])
此外,您可能会遇到的另一个错误是您使用以下行
usernamestart = line.find('\')
'\' 字符是需要转义的特殊字符,如下所示:
usernamestart = line.find('\\')
此外,您需要将信息存储在列表的第一个循环中,以便在写入另一个文件时使用它。
推荐阅读
- javascript - Node.js:使用数据类型的问题
- android-studio - 为什么当我设置图像时应用程序没有成功启动但它在没有图像/徽标的情况下工作?
- android - 如何在折线图中显示条目的图标
- javascript - Googlesheets api在单元格值中插入'
- python - 为什么 pygame 显示器上没有显示地图?
- android - 图像按钮需要点击两次才能在 Android 中删除 Fire 存储数据并更新 UI
- python - iqrt 函数 ValueError
- javascript - Reactjs-如何导航编辑按钮以编辑带有 id 的表单
- html - 在 Vue.js的标签中使用 file:// URL 时出错 - “安全错误:...的内容可能无法加载或链接到 ...”
- python - 将 bash 翻译成 python;“dd”命令“iflag=skip_bytes”如何转换?