如何更改 python 中子列表中元素的大小写?

How to change case in an element inside a sublist in python?

我是 Python 的新手,我试图在包含混合元素的列表列表中更改大小写。我想用标题函数更改每个子列表中的第四个元素 列表是这样的:

records = [2011, 'FEMALE', 'HISPANIC', 'SOPHIA', 223, 3],  
 [2011, 'FEMALE', 'HISPANIC', 'SOPHIE', 12, 76],  
 [2011, 'FEMALE', 'HISPANIC', 'STACY', 10, 78],  
 [2011, 'FEMALE', 'HISPANIC', 'STELLA', 11, 77],  
.......

我想得到的结果是这样的:

records = [2011, 'FEMALE', 'HISPANIC', 'Sophia', 223, 3],  
 [2011, 'FEMALE', 'HISPANIC', 'Sophie', 12, 76],  
 [2011, 'FEMALE', 'HISPANIC', 'Stacy', 10, 78],  
 [2011, 'FEMALE', 'HISPANIC', 'Stella', 11, 77],  
.......

我正在尝试这样做:

     `for row in range(records):`  
      `row[3].title()`
     

但我收到以下错误:

TypeError: 'list' object 不能解释为整数
如果有人能帮助我,我将不胜感激。

你快到了!

考虑输入为:

records = [[2011, 'FEMALE', 'HISPANIC', 'SOPHIA', 223, 3],  
[2011, 'FEMALE', 'HISPANIC', 'SOPHIE', 12, 76],  
[2011, 'FEMALE', 'HISPANIC', 'STACY', 10, 78],  
[2011, 'FEMALE', 'HISPANIC', 'STELLA', 11, 77]]

您可以这样遍历主列表:

for row in records:
    row[3] = row[3].title()

或者,您可以索引 for 循环:

for i in range(len(records)):
    records[i][3] = records[i][3].title()

两者都会产生以下结果:

[[2011, 'FEMALE', 'HISPANIC', 'Sophia', 223, 3],
 [2011, 'FEMALE', 'HISPANIC', 'Sophie', 12, 76],
 [2011, 'FEMALE', 'HISPANIC', 'Stacy', 10, 78],
 [2011, 'FEMALE', 'HISPANIC', 'Stella', 11, 77]]