首页 > 解决方案 > 'tuple' 对象不支持项目分配 & NameError:name

问题描述

代码

import re
letters = ["x","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P"]

def coordSplit(coord):
        splitCoord=[]
        match = re.match(r"([A-Z]+)([0-9]+)", coord, re.I)
        if match:
            splitCoord = match.groups()
        count=0
        for letter in letters:
            if splitCoord[0] == letter:
                print(splitCoord[0])
                splitCoord[1] = str(count) #it can not change this value to a number NameError: name xxx is not defined
            count = count + 1
        return splitCoord

location = "H6"
coordSplit(location)

我一直把它放在一起,我不断收到错误“NameError:名称 splitCoord 未定义”和“'tuple' 对象不支持项目分配”谁能帮忙

标签: python

解决方案


这一行:

splitCoord = match.groups()

返回一个元组。根据文档

因此这一行:

splitCoord[1] = str(count)

将不起作用,因为元组是不可变的。

采用:

splitCoord = list(match.groups())

推荐阅读