python创建变量列表_Python:可以从字符串列表中创建新的变量名吗?

参见英文答案 > How do I create a variable number of variables?                                    16个

我是python的新手,所以我不知道这是否可行.我正在尝试从字符串列表中创建变量名列表,以便我可以为新创建的变量赋值.

我看到了另一个类似的问题,但已经有一个关键词和价值观的字典.

这是我的代码:

def handy(self):

a = raw_input('How many hands? ')

for i in range(int(a)):

h = "hand" + str(i+ 1)

self.list_of_hands.append(h)

# would like to create variable names from self.list_of_hands

# something like "hand1 = self.do_something(i)"

print h

print self.list_of_hands

鉴于一些答案,我正在添加以下评论:

我将为每个变量分配dicts.那么,我可以创建一个字典词典吗?

解决方法:

为什么不用字符串作为键来构造字典呢?

>>> class test():

def handy(self):

a = raw_input('How many hands? ')

d = { "hand" + str(i + 1) : self.do_something(i) for i in range(int(a)) }

keys = d.keys()

keys.sort()

for x in keys:

print x, '=', d[x]

def do_something(self, i):

return "something " + str(i)

>>> test().handy()

How many hands? 4

hand1 = something 0

hand2 = something 1

hand3 = something 2

hand4 = something 3

编辑:您更新了问题,询问您是否可以将字典存储为字典中的值.是的你可以:

>>> d = { i : { j : str(i) + str(j) for j in range(5) } for i in range(5) }

>>> d[1][2]

'12'

>>> d[4][1]

'41'

>>> d[2]

{0: '20', 1: '21', 2: '22', 3: '23', 4: '24'}

>> d[5] = { 1 : '51' }

>> d[5][1]

'51'

标签:python,variables,list

来源: https://codeday.me/bug/20190901/1786373.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值