ng将来自2版本的input。(请参阅了解它的重要性。)这似乎是Python 2代码,其中包含一个未在此处显示的来自_ufuture__u导入print_函数的。您使用的是Python 2还是Python 3?print函数看起来像3,但是您得到的name

ng将来自2版本的input。(请参阅了解它的重要性。)这似乎是Python 2代码,其中包含一个未在此处显示的来自_ufuture__u导入print_函数的。您使用的是Python 2还是Python 3?print函数看起来像3,但是您得到的name,python,nameerror,Python,Nameerror,ng将来自2版本的input。(请参阅了解它的重要性。)这似乎是Python 2代码,其中包含一个未在此处显示的来自_ufuture__u导入print_函数的。您使用的是Python 2还是Python 3?print函数看起来像3,但是您得到的namererror来自2版本的input。(请参阅了解它的重要性。)这似乎是Python 2代码,其中有一个from uuuu future\uuuuu导入print\u函数,此处未显示。这并不能解决Python 2的输入产生的名称错误。(Nic P


ng将来自2版本的
input
。(请参阅了解它的重要性。)这似乎是Python 2代码,其中包含一个未在此处显示的来自_ufuture__u导入print_函数的
。您使用的是Python 2还是Python 3?
print
函数看起来像3,但是您得到的
namererror
来自2版本的
input
。(请参阅了解它的重要性。)这似乎是Python 2代码,其中有一个
from uuuu future\uuuuu导入print\u函数
,此处未显示。这并不能解决Python 2的
输入产生的
名称错误
。(Nic Pismiris没有指定他使用的Python的哪个版本,但Python 3的
输入不会产生该错误。)此外,
如果有(s中的模式代表s in….split()):
将迭代一个字符串的相同列表,使其与“EncryptedCrypted”中的
if模式有效相同:
。因此,如果
模式
'encrypt'
,它将返回
True
,但如果它是
'ted'
'cry'
'edecr'
,它也将返回
True。最后一个选项——允许的字符串列表——要精确得多。感谢Kevin提供了“any”失败的用例,同时查看代码,确定代码是用python 3编写的,如果用户需要输入字符串或字符,使用input()也会像python 3一样给出“NameError”,用户需要将输入括在双引号/单引号中,因此在上述情况下,输入应该是:“加密”而不是仅加密。您是指Python 2,不是Python 3,对吗?3的
输入总是返回字符串(与2的
原始输入相同)。是2的
input
尝试评估用户键入的任何内容。是的,你是对的。我把它和python 2混淆了。*
input()
函数。这并不能解决python 2的
input
产生的
namererror
。(Nic Pismiris没有指定他使用的Python的哪个版本,但Python 3的
输入不会产生该错误。)此外,
如果有(s中的模式代表s in….split()):
将迭代一个字符串的相同列表,使其与“EncryptedCrypted”中的
if模式有效相同:
。因此,如果
模式
'encrypt'
,它将返回
True
,但如果它是
'ted'
'cry'
'edecr'
,它也将返回
True。最后一个选项——允许的字符串列表——要精确得多。感谢Kevin提供了“any”失败的用例,同时查看代码,确定代码是用python 3编写的,如果用户需要输入字符串或字符,使用input()也会像python 3一样给出“NameError”,用户需要将输入括在双引号/单引号中,因此在上述情况下,输入应该是:“加密”而不是仅加密。您是指Python 2,不是Python 3,对吗?3的
输入总是返回字符串(与2的
原始输入相同)。是2的
input
尝试评估用户键入的任何内容。是的,你是对的。我把它和Python2搞混了。*
input()
function。很好。我看到了带有括号的
print
函数,并假设代码是Python3(与大多数其他函数一样,似乎…),这是一个很好的捕获。我看到了带有括号的
print
函数,并假设代码是Python3(似乎和大多数其他函数一样…)。
MAX_KEY_SIZE = 26
def getMode():
    while True:
           print('Do you wish to encrypt or decrypt a message?')
           mode = input().lower()
           if mode in "encrypt" 'e' 'decrypt' 'd'.split():
                return mode
           else:
                 print('Enter either "encrypt" or "e" or "decrypt" or "d".')
MAX_KEY_SIZE=26
def getMode():
    while True:
        mode=input().lower()
        if mode in ['encrypt','e','decrypt','d']:
            return mode
        else:
            print('Enter either "encrypt" or "e" or "decrypt" or "d".')
if mode in "encrypt e decrypt d".split()
MAX_KEY_SIZE = 26
def getMode(): 
    while True:
        print ('Do you wish to encrypt or decrypt a message?') 
        mode = input().lower()
        if mode in "encrypt" 'e' 'decrypt' 'd'.split():
            return mode 
        else: 
            print('Enter either "encrypt" or "e" or "decrypt" or "d".')
if mode in "encrypt" 'e' 'decrypt' 'd'.split():
>>> "encrypt" 'e' 'decrypt' 'd'
'encryptedecryptd'
>>> "encrypt" 'e' 'decrypt' 'd'.split()
['encryptedecryptd']
>>> 'encrypt' in ['encryptedecryptd']
False
>>> 'encryptedecryptd' in ['encryptedecryptd']
True