import networkx as nx
import string
import random
females = list(string.ascii_lowercase)
males = list(string.ascii_uppercase)
class User_():
def __init__(self, id_):
self.id_ = id_
self.G = nx.DiGraph()
seed = random.randint(0,26)
frnd_User_ = []
for i in range(0, seed):
frnd_User_.append(males[random.randint(0,25)])
frnd_User_.append(females[random.randint(0,25)])
self.frnd_User_ = frnd_User_
edge_User_ = []
for i in range(0, len(frnd_User_)):
edge_User_.append((self.id_,frnd_User_[i]))
self.edge_User_ = edge_User_
self.G.add_edges_from(edge_User_)
对于定义User_()的给定代码,我想为列表中的每个字母生成User_class。例如,我想使用for循环执行以下任务:
A =用户_(' A')
B =用户_(' B')
...
Z =用户_(' Z')
我尝试过以下代码,但会收到错误消息:
for i in range(0, 25):
males[i] = exec("%s = %d" % (males[i],User_(males[i])))
TypeError Traceback (most recent call last)
<ipython-input-24-d6ab5c2813a4> in <module>()
1 for i in range(0, 25):
----> 2 males[i] = exec("%s = %d" % (males[i],User_(males[i])))
TypeError: %d format: a number is required, not User_
有什么建议要继续吗?