排列并填充两个类似的列表

也许有一些功能,例如zip或地图.如果没有,那是
推动和弹出可能相当容易.我只是在检查是否要查看是否
没有一些已知的简单单函数可以做我想要的.这是
我想做的.
我有一个像dat这样的列表(假设项目是字符串甚至以为我
省略行情.):
[A.Dat,C.Dat,G.Dat,K.Dat,P.Dat]
我还有另一个名为TXT的列表,看起来像:
[a.txt,b.txt,g.txt,k.txt r.txt,w.txt]
我需要的是将项目与相同的前缀配对并使用"无"或一些
标记,指示没有对面的项目.也就是说,在非列表中
形式,我想要:
A.Dat A.TXT
无b.txt
C.Dat无
G.DAT G.TXT
K.Dat K.TXT
p.dat无
无r.txt
无w.txt
最终,我正在做的是找到对成对的失踪成员.
- -
韦恩·沃森(WAWNE WATSON)(沃森冒险,加利福尼亚州内华达市的道具)
(121.015度W,39.262度N)GMT-8 HR STD.时间)
OBZ站点:39°15'7" N,121°2'32" W,2700英尺
网页:

# 回答1


8月28日,10:50*pm," W. ewatson" 这为您提供了清单.您的意思是"失踪成员"
成对'?如果您的意思是,"出现在"或"集中的元素集
它出现在一个但不是两者中',您可以在线短路
14.
- 破坏,剧透 -
dat = ['a.dat','c.dat','g.dat','k.dat','p.dat']
dat.sort()
txt = ['a.txt','b.txt','g.txt','k.txt','r.txt','w.txt']
txt.sort()
导入OS.Path
datd = {}
对于D dat:
r,_ = os.path.splitext(d)
datd [r] = D
txtd = {}
对于txt中的d:
r,_ = os.path.splitext(d)
txtd [r] = D
两者=排序(list(set(datd.keys())| set(txtd.keys())))
打印datd
打印TXTD
两者都打印
对于我,x在枚举中(两者):
[i] = datd.get(x,none),txtd.get(x,none)
两者都打印
输出:
{'a':'a.dat','p':'p.dat','c':'c.dat','k':'k.dat','g':'g.dat' }
{'a':'a.txt','b':'b.txt','g':'g.txt','k':'k.txt','r':'r.txt' ,,,,
'W':'W.T
XT'}
['a','b','c','g','k','p','r','w']
[('a.dat','a.txt'),(none,'b.txt'),('c.dat',none),('g.dat',
'g.txt'),('K.D
at','k.txt'),('p.dat',none),(无,'r.txt'),(none,'w.txt')](_@@_)
" W. ewatson" 这在功能上受到影响,但应该很简单:
dat = ['a.dat','c.dat','g.dat','k.dat','p.dat']
txt = ['a.txt','b.txt','g.txt','k.txt','r.txt','w.txt']
#在第一个阶段之前获取文件名的部分
DEF前缀(文件名):
返回文件名[:filename.find('.')]
#将字典映射到文件名的前缀
def make_dict(plist):
返回dict(((a),a)in in in plist)
pdat = make_dict(dat)
ptxt = make_dict(txt)
#获取所有前缀的列表,使用"设置"删除
#重复,然后对结果进行排序,然后查找每个前缀.
对于p中的p(set(pdat.keys() + ptxt.keys())):
打印pdat.get(p),ptxt.get(p)
# 回答2


d,t = [dict((x.split('.'.')[0],x)for x in x)for x in(dat,txt)in(dat,txt)]
对于k中的k(set(d).union(t)):
对于d,t,t : 打印'%-8S'%s.get(k,'none'), 打印 Hth W. Ewatson写道:
# 回答3

Castironpi写道: ... 实际上,我从listDir获取文件名,它们似乎是 低到高. 我在带有许多不同文件的文件夹上尝试了它. 每个DAT文件包含一个图像及其描述及相关参数 在相应的TXT文件中. ....
# 回答4

8月29日,上午1:29," W. Ewatson"

标签: python

添加新评论