首页 > 解决方案 > 无法用字符串中的点替换逗号,反之亦然

问题描述

我正在尝试用点替换字符串中的逗号。我编写了以下代码,但输出是一个只有点且没有逗号的字符串。请让我知道我哪里错了。

my_string = 't,r,y.i.n.g'
my_list= []
for x in my_string:
    if x != (',' and '.'):
        my_list.append(x)
    elif x== ",":
        my_list.append(".")
    else:
        my_list.append(",")

new_str = ''
for i in my_list:
    new_str +=i
print(new_str)

标签: python-3.xstringfor-loopreplaceappend

解决方案


线

if x != ',' and '.':

应该是

if x != ',' and x != '.':

或者

if x not in (',', '.'):

你写它的方式,它解释and '.'检查是否'.'是一个非空字符串,它是,所以and '.'部分总是匹配的。


推荐阅读