【发布时间】:2021-12-19 14:46:08
【问题描述】:
我在这里有几个与替换字符串的字母和元素有关的问题。 我使用一个新列表并在那里打印 * 和使用 if 的字母。但是我正在尝试使用 python,所以如果有人可以帮助我,我会非常高兴:)
- 为什么这段代码不起作用?我认为一切都应该是正确的,但我得到了相同的输出并且字符串没有改变。
def find_a_common(list, string):
for word in list:
for letter in word:
if letter in string:
string.replace(letter, "*")
return string
print(find_a_common(["ala"], "Kasia"))
- 为什么这段代码不起作用?当一切正确且代码有效时,我有类似的示例?
def find_a_common(list, string):
a = []
for word in list:
for letter in word:
list = ["*" for letter in list if letter in string else letter for letter in list]
return list
print(find_a_common(["ala"], "Kasia"))
例子:
>>> a=[1,2,3,1,3,2,1,1]
>>> [4 if x==1 else x for x in a]
[4, 2, 3, 4, 3, 2, 4, 4]
- 在这种情况下,三重循环是否可行?如何构建这样的东西。
def find_a_common(list, string):
for letter in string:
for word in list:
for letter in list:
if letter in list:
string.replace(letter, "*")
return string
print(find_a_common(["ala"], "Kasia"))
【问题讨论】:
-
str.replace返回一个新字符串。它不会改变调用它的字符串! -
那么,如何使用这个获得正确的输出?
-
string = string.replace(letter, "*") -
你想用 2 和 3 实现什么?您能否添加具有所需输出的示例?
-
3 个练习的愿望输出相同。例如 Ksi
标签: python string list replace