0

ユーザー入力を取り込み、それを使用してオブジェクトを作成しています。これで、受け入れ可能なオブジェクト名 (AE) のリストができました。私ができると思ったのは pop(0) で、戻り値をオブジェクトの名前として使用することでした。このようにして、入力時にオブジェクト名が重複することはありません。これまでのところ、ポップされた値をオブジェクトの名前に適切に割り当てる方法がわかりません.(Netはプログラムの開始時に定義されたクラスです)

userIP = None

name_list = ['A', 'B', 'C', 'D', 'E']

while True:
    if userIP == 'end':
        break
    userIP = input("Enter IP (type 'end' to exit): ")
    userMask = input("Enter Mask: ")
    name_list.pop(0) = Net(userIP, userMask)
    print("The object just created would print here")
4

2 に答える 2

5

結果を辞書に入れます。指定された名前で変数を作成しようとしないでください。その方法は狂気です。

net_dict = {}

# ...

name = name_list.pop(0)
net_dict[name] = Net(userIP, userMask)
print(net_dict[name])

コンテナにそれらがある場合、実際には名前が必要ないことに気付くかもしれません。つまり、の名前は何ですか? 答えが単に「それらをある順序で保持するため」である場合は、リストを使用します。

net_list = []

# ...

net_list.append(Net(userIP, userMask))
print(net_list[-1])
于 2014-11-19T16:58:18.060 に答える