0

我正在编写一个应该与列表一起使用的函数,如果我使用这个例子:

def mode(year):
    monthAmount = len(year)

    for month in year:
        (month)Index = len(month)

我想做的是,假设年份是[January, February, March],结果应该是这样的:JanuaryIndex = *, FebruaryIndex = *, MarchIndex = *, 等等;有许多不同的月份。是否有捷径可寻?谢谢。

4

1 回答 1

3

我不完全确定您在这里寻找什么。

要将索引与实际值一起循环到序列中,请使用以下enumerate()函数

for index, month in enumerate(year):
    print index, month

您真的不想动态设置全局变量。改用字典:

monthindices = {}

for month in year:
    monthindices[month] = len(month)

可以通过访问globals()映射来动态创建全局变量,但这样做通常不是一个好主意。如果你很固执,你会这样做:

gl = globals()
for month in year:
    gl['{}Index'.format(month)] = len(month)
于 2013-02-24T12:27:52.743 回答