【问题标题】:replace two or more numbers with one char in python3在python3中用一个字符替换两个或多个数字
【发布时间】:2020-03-13 13:06:56
【问题描述】:

我想做的是使用这段代码

请求输入

orgtxt = input("Enter text: ")
charFF = "55"

用“A”替换每个“55”——而不是替换“5”

for i in charFF:
    orgtxt = orgtxt.replace(i, "A")
print(orgtxt)

但是这段代码不仅替换了所有 5 的“55”

如果用户输入是 10530855,它将用 A 替换所有 5,输出将是 10A308AA,但我需要它是 105308A

【问题讨论】:

  • 这工作'10530855'.replace('55', 'A')

标签: python python-3.x string replace


【解决方案1】:

试试下面这个:

    orgtxt = input("Enter text: ")
    charFF = "55"
    print(orgtxt.replace(charFF, 'A'))

【讨论】:

  • 它可以工作,但是当我有多个要替换的字符时它不起作用,这意味着当我有 charRR ="66" 并执行相同的代码时它不起作用
【解决方案2】:

那是因为您正在逐个字符地迭代您的 charFF 变量。 因此在 for 循环中,变量 i 在第一次迭代时为 '5',然后在第二次迭代中再次为 '5'。

只需像其他分析器所指出的那样,直接使用 replace()。

【讨论】:

    猜你喜欢
    • 2012-04-18
    • 2020-07-12
    • 1970-01-01
    • 2021-02-26
    • 1970-01-01
    • 2020-11-15
    • 2023-02-07
    • 1970-01-01
    • 2014-07-15
    相关资源
    最近更新 更多