拆分单词并创建具有不同名称的新文件(python)

2024-10-01 22:34:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要写一个这样的程序: 编写一个读取文件的程序。毕加索.ini并将照片复制到新的文件中,其姓名与这些照片上的人的识别号相同(例如8ff985a43603dbf8.jpg)。如果照片上有更多的人,它会复制更多。如果一个人在更多的图片上,稍后会覆盖先前的图片副本;如果一个人8ff985a43603dbf8可能出现在更多图片中,则只有一个具有此名称的文件存在。你必须假定我们有一个简单的文件。毕加索.ini. 在

我有一个.ini,它包括:

[img_8538.jpg]
faces=rect64(4ac022d1820c8624),**d5a2d2f6f0d7ccbc**
backuphash=46512

[img_8551.jpg]
faces=rect64(acb64583d1eb84cb),**2623af3d8cb8e040**;rect64(58bf441388df9592),**d85d127e5c45cdc2**
backuphash=8108
...

这是开始这个项目的好方法吗?在

^{pr2}$

有更好的方法吗?记住.jpg文件必须用一个新名称创建,所以我想我应该将当前的.jpg文件与粗体文件链接起来。在


Tags: 文件方法程序名称img副本图片ini
3条回答
import ConfigParser
import string
config = ConfigParser.ConfigParser()
config.read('C:\Users\Admin\Desktop\podatki-picasa\.picasa.ini')
imgs = []
for item in config.sections():
    imgs.append(config.get(item, 'faces'))

这项工作仍在进行中。只是想问一下是否正确。在

编辑: 还不知道火辣辣的把粗体字从那里撕了出来。这种分裂功能对我来说真的很痛苦。在

考虑使用ConfigParser。然后,您将不得不手动拆分每个值,如您所述。在

建议:

  1. 你的台词不是以“脸谱”开头的,所以你的第二行不会按你想要的方式工作。根据文件其余部分的外观,您可能只需要检查该行在该点是否为空。

  2. 要获取所需的信息,请先从“”处拆分,然后从那里开始工作

尝试一个解决方案:您需要的元素似乎总是在它们前面有一个',',所以您可以从“,”符号开始拆分,并从1索引元素开始获取所有内容[1::]。然后,如果我所想的是正确的,您将这些元素再次拆分两次:在“;”处,取该元素的0索引元素,在该元素处,再次使用0索引元素。在

for line in open('thingy.ini'):
if line != "\n":
    personelements = line.split(",")[1::]
    for person in personelements:
        personstring = person.split(";")[0].split(" ")[0]
        print personstring

对我来说:

d5a2d2f6f0d7ccbc

2623af3d8cb8e040

d85d127e5c45cdc2

相关问题 更多 >

    热门问题