Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.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_Python 3.x - Fatal编程技术网

Python 替换列表中字符串的字符

Python 替换列表中字符串的字符,python,python-3.x,Python,Python 3.x,我将替换l3中的字符和/或字符串,方法是将其与l1和l2进行比较。我得到的输出和我喜欢得到的输出如下所示 我的代码 l1 = ["Jai","Sharath","Ravi","Aditya"] l2 = ["Singh","Kumar","Sharma","Rao"] l3 = ["J.Singh","Sharath_K","R-Sharma","Rao_Aditya"] for x,y,z in zip(l1,l2,l3): if x in z: z.replace(x,"Firs

我将替换l3中的字符和/或字符串,方法是将其与l1和l2进行比较。我得到的输出和我喜欢得到的输出如下所示

我的代码

l1 = ["Jai","Sharath","Ravi","Aditya"]
l2 = ["Singh","Kumar","Sharma","Rao"]
l3 = ["J.Singh","Sharath_K","R-Sharma","Rao_Aditya"]
for x,y,z in zip(l1,l2,l3):
  if x in z:
    z.replace(x,"Firstname")
  elif x[0] in z:
    z.replace(x[0],"First/Character/of/first/name")
  elif y in z:
    z.replace(y,"lastname")
  else:
    z.replace(y[0],"First/Character/of/last/name")
我的输出

'First/Character/of/first/name.Singh'
'Firstname_K'
'First/Character/of/first/name/Sharma'
'Rao_Firstname'
我的预期产出

'First/Character/of/first/name.lastname'
'Firstname_First/Character/of/last/name'
'First/Character/of/first/name/lastname'
'lastname_Firstname'

如何获得所需的输出?

字符串是不可变的<代码>替换不起作用,它返回一个新字符串。您需要将新字符串重新分配到原始名称

if x in z:
    z = z.replace(x,"Firstname")

(另外,请使用多个空格缩进。)

字符串是不可变的<代码>替换不起作用,它返回一个新字符串。您需要将新字符串重新分配到原始名称

if x in z:
    z = z.replace(x,"Firstname")

(另外,请使用多个空格缩进。)

考虑使用
elif
。如果您的第一个条件触发,替换姓氏,最后一个条件是否会触发以替换姓氏?您可能需要尝试两种
if
else
结构

考虑以下几点:

z = 'abc'
if z[0] == 'a':
    z = z.replace('a', '1')
elif z[1] == 'b':
    z = z.replace('b', '2')
if z[2] == 'c':
    z = z.replace('c', '3')

这个街区尽头的z是什么?删除
z=
会改变这一点吗?更改条件(
if
elif
else
)如何更改输出?

请考虑使用
elif
。如果您的第一个条件触发,替换姓氏,最后一个条件是否会触发以替换姓氏?您可能需要尝试两种
if
else
结构

考虑以下几点:

z = 'abc'
if z[0] == 'a':
    z = z.replace('a', '1')
elif z[1] == 'b':
    z = z.replace('b', '2')
if z[2] == 'c':
    z = z.replace('c', '3')

这个街区尽头的z是什么?删除
z=
会改变这一点吗?更改条件(
if
elif
else
)如何更改输出?

我可以使用什么其他方法?为什么需要其他方法?这一个有什么问题?那么我如何包括最后2个条件如果我使用上面的代码,则只显示最后一个值的输出还有什么其他方法可以使用为什么需要其他方法?这一个有什么问题?那么我如何包括最后2个条件如果我使用上面的代码,只显示最后一个值的输出如果我使用上面的代码,我会得到两个输出实例,如果列表大小是100+我会得到两个输出实例,如果我使用上面的代码,它也会不实用如果列表大小为100,请逐个字符进行比较+