python报错 ValueError: not enough values to unpack (expected 2, got 1)

具体报错为

Traceback (most recent call last):
  File "D:\pythonProject1\井字棋.py", line 124, in <module>
    playerLetter, computerLetter = inputPlayerLetter()
ValueError: not enough values to unpack (expected 2, got 1)

相应代码

def inputPlayerLetter():
    letter = ''
    while not(letter == 'X' or letter == 'O'):
        print('你想选择X或O')
        letter = input().upper()
    if letter == 'X':
        return['X,O']
    else:
        return['O,X']

['X,O'] 返回的虽然是个列表,但只有一个引号,所以只是一个元素,你主程序里用解包操作左边是两个所以会报错。

如果帮到你,帮忙采纳下,多谢!

按下面这样改就不会错了。

def inputPlayerLetter():
    letter = ''
    while not(letter == 'X' or letter == 'O'):
        print('你想选择X或O')
        letter = input().upper()
    if letter == 'X':
        return['X','O']
    else:
        return['O','X']


if __name__ == '__main__':
    A=inputPlayerLetter()
    b,c=A
    print(A,b,c)