如何在类似于指针C的python中获取列表中每个值的id(地址)?

如何在类似于指针C的python中获取列表中每个值的id(地址)?,python,Python,首先,对不起,我英语不好 我试图在python中获取列表的id,以使每个变量通过locale函数得到过滤值 请查看下面的代码 dayLow ="123124" dayHigh = "200000" volume = "21512542" marketCap = "235136346137" toLocale = [dayLow, dayHigh, volume, marketCap] afterLocale = list() def locale(inform_data): in

首先,对不起,我英语不好

我试图在python中获取列表的id,以使每个变量通过locale函数得到过滤值

请查看下面的代码

dayLow ="123124"
dayHigh = "200000"
volume = "21512542"
marketCap = "235136346137"

toLocale = [dayLow, dayHigh, volume, marketCap]

afterLocale = list()

def locale(inform_data):
     inform_data = f"{inform_data:,}"
     return inform_data

for item in toLocale:
     item = locale(int(item))
     afterLocale.append(item)

i = 0
while(i < afterLocale):
    id(toLocale[i]) = afterLocale[i]
    i += 1
所以问题是


toLocaledayLow、dayHigh中的每个变量如何。。。获取按函数区域设置筛选的值?

我不确定这是否正是您想要的,但如果您试图转换这些值,使用字典可能更适合您的用例:

items = {
    "dayLow": 123124,
    "dayHigh" 200000,
    "volume": 21512542,
    "marketCap": 235136346137,
}


# now you can use `locale` for the keys:
for name, value in items.values():
    # `name` will have a value of "dayLow", "dayHigh" etc...
    print(locale(name), value)

您不能通过使用变量的id来分配变量-这不是id的用途

如果您想动态地将变量分配给值,可以使用exec来实现

但我强烈建议不要这样做。 只需输入所需的额外代码。从长远来看,这会帮你省去很多头痛

dayLow ="123124"
dayHigh = "200000"
volume = "21512542"
marketCap = "235136346137"

toLocale = {'dayLow': dayLow, 'dayHigh': dayHigh, 'volume': volume, 'marketCap': marketCap}

def locale(inform_data):
     inform_data = f"{inform_data:,}"
     return inform_data

for var_name, var_value in toLocale.items():
     exec(f'{var_name} = "{locale(int(var_value))}"')

print(dayLow, dayHigh, volume, marketCap)
输出:

123,124   200,000   21,512,542   235,136,346,137

idtoLocale=afterLocale[i]这一行应该做什么?哦,对不起,我错过了索引。我只是把它编辑成idtoLocale[I]。即使这样,它也没有任何意义。当该行执行时,您希望发生什么?例如,dayLow的值类似于123124,这将转到locale函数。locale函数将123124设置为123124。我认为这个代码使赋值dayLow=123124。它不起作用了。我只想做这样的作业。为什么不直接做dayLow=localedayLow?天哪,谢谢你的回答,并警告!!女1:谢谢
123,124   200,000   21,512,542   235,136,346,137