2

変数を割り当てたいのですが、同じ変数がリスト内の各値に 1 ずつ増加しただけなので、たとえば、変数my_list=[[aa],[ab],[ba],[bb],[bc],[cb],[cc],[cd]]になりたいので、出力が多かれ少なかれ次のようになるように、リストを処理する必要があります。, , , , . _dd+=1value[0]=d0value[1]=d1value[2]=d2value[3]=d3value[4]=d4value[5]=d5value[6]=d6value[7]=d7

def my_list():
    my_list=[[aa],[ab],[ba],[bb],[bc],[cb],[cc],[cd]] #list of values
    for d in my_list:
        d+=1 #? i don't know? how could i do this?
4

2 に答える 2

1

私がそれをすることを考えた1つの方法:

def my_list(n):
   my_list, my_num, my_var = [], 0, '' #multiple assignment of variables
   for my_num in range(n + 1): #second argument is exclusive, this implies (0, n + 1)
      my_var = 'd' + str(my_num)
      my_list.append(my_var)
   return my_list

または、辞書を使用することもできます(同じアイデアですが、少し異なります)。

def my_dict(n):
   my_dict, my_num, my_var = {}, 0, ''
   for my_num in range(n + 1):
      my_var = 'd' + str(my_num)
      my_dict[my_num] = my_var
   return my_dict

として各エントリのキーにmy_numなり、値は。になりますmy_var'd'文字列であれば、実際には何にでも置き換えることができます。文字列としてフォーマットされておらずmy_num、整数または浮動小数点数である場合、それらを連結するのではなく、それらを加算します(3 + 7結果として10、ではなく37)。

于 2012-12-07T17:45:15.417 に答える
1

リスト内包表記を探しているのではないでしょうか?

value = [d[0] for d in my_list]

リスト内包表記を使用すると、イテラブルの各要素を処理して新しいリストを生成できます。上記の例は、ネストされたリストの最初の要素を取得し、それぞれを新しいリストに追加します。入力リストは次のように変換されます。

[aa, ab, ba, bb, bc, cb, cc, cd]
于 2012-12-07T17:26:17.983 に答える