Python 添加条件
我很难在函数中添加条件 我想写一个有两个参数的函数,其中输入框要求输入一个他们想要替换的字母,函数将在输入中选择的字母替换为函数中的第二个参数字母。比如说, 替换“我喜欢编码”、“p” “输入您要替换的字母”:o lpve-tp-cpde 到目前为止还不错Python 添加条件,python,Python,我很难在函数中添加条件 我想写一个有两个参数的函数,其中输入框要求输入一个他们想要替换的字母,函数将在输入中选择的字母替换为函数中的第二个参数字母。比如说, 替换“我喜欢编码”、“p” “输入您要替换的字母”:o lpve-tp-cpde 到目前为止还不错 def replace(phrase,letter): c = input("Enter a letter you would like to replace") d = ""
def replace(phrase,letter):
c = input("Enter a letter you would like to replace")
d = ""
for char in phrase:
if char == c:
d += letter
else:
d += char
print(d)
但我想增加一个条件,我很难做到这一点。如果输入中输入的字母不在第一个参数短语中,则应打印出字母必须在短语中。并再次要求输入他们想要替换的字母,该字母位于参数短语中给出的短语中
另外,我只想使用枚举。我不希望使用任何内置函数,如append或replace。要检查字符串my\u字符串中是否有字符“x”,可以使用in运算符:
>>> my_string = 'I love to code'
>>> 'o' in my_string
True
>>> 't' in my_string
True
>>> 'p' in my_string
False
当然,您也可以将该字符存储在变量中:
>>> a = 'p'
>>> a in my_string
False
>>> a = 'o'
>>> a in my_string
True
您可以将原始输入与while True结合使用,如下所示:
$ cat x.py
#!/usr/bin/python
def replace(a,b):
while True:
c = raw_input("Enter a letter you would like to replace:")
if len(c) != 1 or c not in a:
print "Invalid input! Try again"
else:
break
d = ""
for char in a:
if char == c:
d += b
else:
d+= char
print(d)
>>> from x import replace
>>> replace('this is a test', 'z')
Enter a letter you would like to replace:1
Invalid input! Try again
Enter a letter you would like to replace:q
Invalid input! Try again
Enter a letter you would like to replace:t
zhis is a zesz
添加默认为false的布尔值,如果找到字母char,则将其设置为true 如果处理完所有字符后布尔值仍然为false,则抛出一个错误
def replace(a,b):
while True:
c = input("Enter a letter you would like to replace")
d = ""
charfound = False
for char in a:
if char == c:
charfound = True
d += b
else:
d+= char
if charfound:
print(d)
break
else:
print('Letter must be in phrase!')
如果希望脚本在未找到字符时重新询问用户,则需要将所有代码放在一个永久循环中,即当为True时:并在成功执行时中断它请使用有意义的变量名。整个代码的读取需要大约5秒的时间;相反,我的大脑不得不回溯三次,然后放弃,因为这不值得。@roippi-lol,我很抱歉。下次我不会犯那个错误。为什么我会收到反对票?因为这个问题的质量很低。这是常见的语言结构,因此它表明您甚至不必费心学习基础知识。使用随意的缩进、无意义的变量名进行格式化,并且没有试图解决问题或描述您遇到的问题,我只想这样做,但我的问题是如何添加一个条件,如果输入的字母不在短语中,那么它应该打印出字母必须在短语中。并重定向另一个输入屏幕,要求输入他们要替换的字母。my_字符串中的a是一个条件。您可以像在代码中使用条件char==c一样使用它。为了重复一些东西,你使用了一个循环。因此,只要不满足条件,您就需要重复向用户请求新输入。原始输入在作者使用输入的python 3中不存在。