我输入,我的文件中有以下几行。你知道吗
...
VOAUT0000001712_19774.JPG FRYW-1712-19774.jpg eab516afc1aaa10ad23edb5c15ae4ea4 1712 01
VOAUT0000001712_19775.JPG FRYW-1712-19775.jpg 2715ceba8fd5c69b4ca6952e942a1a8a 1712 02
VOAUT0000001712_19776.JPG FRYW-1712-19776.jpg b1a0c4ec6160da3511e23c617517ff6f 1712 03
VOAUT0000001713_19795.JPG FRYW-1713-19795.jpg 56cd173c6e9436b19d39de214669cc53 1713 01
VOAUT0000001713_19796.JPG FRYW-1713-19796.jpg 271aa1b9ef2ac39c502a270c82b31fa3 1713 02
VOAUT0000001713_19797.JPG FRYW-1713-19797.jpg 667732a85660bebec168bc46b884d9b7 1713 03
VOAUT0000001714_19763.JPG FRYW-1714-19763.jpg d37770d6cde5639ce5db4e6a436498a8 1714 01
VOAUT0000001714_19764.JPG FRYW-1714-19764.jpg ce891ca4d4ea59c3a312a468bb0d4408 1714 02
VOAUT0000001714_19765.JPG FRYW-1714-19765.jpg bd7fed521fe3997bf5c879d9d5ce942d 1714 03
...
我想一行一行地修改我的文件以便
17124615_01_hd.jpg /opt/AutoPrivilege/client/photos/FRYW-1712-19774.jpg eab516afc1aaa10ad23edb5c15ae4ea4
17124615_02_hd.jpg /opt/AutoPrivilege/client/photos/FRYW-1712-19775.jpg 2715ceba8fd5c69b4ca6952e942a1a8a
17124615_03_hd.jpg /opt/AutoPrivilege/client/photos/FRYW-1712-19776.jpg b1a0c4ec6160da3511e23c617517ff6f
17134615_01_hd.jpg /opt/AutoPrivilege/client/photos/FRYW-1713-19795.jpg 56cd173c6e9436b19d39de214669cc53
17134615_02_hd.jpg /opt/AutoPrivilege/client/photos/FRYW-1713-19796.jpg 271aa1b9ef2ac39c502a270c82b31fa3
17134615_03_hd.jpg /opt/AutoPrivilege/client/photos/FRYW-1713-19797.jpg 667732a85660bebec168bc46b884d9b7
17144615_01_hd.jpg /opt/AutoPrivilege/client/photos/FRYW-1714-19763.jpg d37770d6cde5639ce5db4e6a436498a8
17144615_02_hd.jpg /opt/AutoPrivilege/client/photos/FRYW-1714-19764.jpg ce891ca4d4ea59c3a312a468bb0d4408
17144615_03_hd.jpg /opt/AutoPrivilege/client/photos/FRYW-1714-19765.jpg bd7fed521fe3997bf5c879d9d5ce942d
以下是我的代码的开头:
def renameLineByLine():
with open('/opt/data/photos.txt') as f:
for line in f:
newname, file, path, checksum = line.split()
if ..?? :
try:
rename(...???)
except OSError:
logger.error('Got a problem')
但是我不知道如何用新的格式重命名每一行。。?你知道吗
已经提供了生成行所需的所有信息。感谢@SebastianHöffner指出了显而易见的问题。你知道吗
您需要正确地读入文件:跳过空行并拆分为正确的值。没有
path
在那里你期望一个,而你不考虑最后的两个数字,这对转换是至关重要的。你知道吗在这里,我只需将所有新格式化的行写入一个新文件
photos_new.txt
。我希望这能让你开始。你知道吗但是请注意,您的方法名
renameLineByLine
以及try/except
似乎暗示您还希望对图片进行移动/重命名/处理。如果是这样的话,这个答案将是不够的,你应该试着详细一点。你知道吗输入:
输出:
像这样:
相关问题 更多 >
编程相关推荐