比较字符串与输入字符串:: python
我想比较一个输入字符串,但是当我输入barack作为输入时,编译器直接转到其他条件,忽略if条件并给我输出“Wrong答案“比较字符串与输入字符串:: python
def main():
First_name = raw_input(" enter the first name of President Obama : ") #input
if First_name == ['b', 'a', 'r','a', 'c', 'k'] :
print "Correct answer"
else :
print "Wrong answer"
Exit_key = input('Press any key to end')
你有这样做的原因吗?尝试:
if First_name == "Barack" :
就像一个魅力工作谢谢 – johnny 2014-11-04 22:42:47
'如果First_name.lower()== barack'会更pythonic – Hackaholic 2014-11-04 22:43:23
没问题,请标记为接受的答案,如果它的工作。 – marsh 2014-11-04 22:46:03
raw_input
是一个字符串,所以做你想要什么,你将不得不呼吁字符串列表:
if list(First_name) == ['b', 'a', 'r','a', 'c', 'k'])
这是比较容易只是做if First_name == "barack"
In [1]: inp = raw_input()
barack
In [2]: list(inp)
Out[2]: ['b', 'a', 'r', 'a', 'c', 'k']
In [3]: inp
Out[3]: 'barack'
使用lambda
和map
。只是如果你想学习基本概念
if map(lambda x:x,First_name.lower()) == ['b', 'a', 'r','a', 'c', 'k']:
你为什么认为输入是一个列表?! – jonrsharpe 2014-11-04 22:38:16
Python字符串不是char数组。 – 2014-11-04 22:41:11