Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
制作基于正则表达式Python的值的字典_Python_Regex - Fatal编程技术网

制作基于正则表达式Python的值的字典

制作基于正则表达式Python的值的字典,python,regex,Python,Regex,假设我有一本字典x={'123A……:无,'123AA….':无,'123AB….':无} 假设我还有一个列表y=['123AC….'、'123ABB….'、'123ABC….'] 我想要的是以下结果: {'123A…':[123AC…],'123AA…':['123AC…],'123AB…':['123ABB…]} 我想下面的方法可以奏效 for item in x: x[item] = re.findall(r'123[A-Z\.]{7}', ''.join(y)) 或者类似的。感

假设我有一本字典
x={'123A……:无,'123AA….':无,'123AB….':无}

假设我还有一个列表
y=['123AC….'、'123ABB….'、'123ABC….']

我想要的是以下结果:

{'123A…':[123AC…],'123AA…':['123AC…],'123AB…':['123ABB…]}

我想下面的方法可以奏效

for item in x:
    x[item] = re.findall(r'123[A-Z\.]{7}', ''.join(y))

或者类似的。感谢您的帮助。

您可能需要这样的帮助

for item in xrange(len(x)):
      x[x.keys()[item]] = re.findall(r'123[A-Z\.]{7}', ''.join(y[item]))
这样x和y都会递增

但我很确定这可以用zip做得更容易

如果您有:

x = ['123A......', '123AA......', '123AB......'] 
y = ['123AC.....', '123ABB....', '123ABC....']

dict(zip(x,y))
它将输出

{'123AB…':'123ABC…,'123A…':'123AC…,'123AA…':'123ABB…}


我相信这对你和它的Waaaaaa可能更容易,因为它会保持列表的顺序(列表项x[0]将与y[0]配对),如果你只是增加指令的键。。。奇怪的秩序发生了。。。。。玩一下dict(zip(listA,listB))你就会知道我在说什么

你的for循环中没有增加y,所以每个x.key在itHa中都有完全相同的值,只是在写这篇文章时注意到了这一点。就要修改了,等一下,y没有改变。这只是从字符串列表中创建的一个长字符串。在图案开头添加一个“^”将是saferOkay,这是最接近的,我可以使用它。非常感谢。