0

いくつかのデータ(ID = Name)があり、指定されたユーザーIDの名前をQTableWidgetに入れたいのですが、forループで問題が発生しています...

これが私のコードです:

for x in people:
  for y in range(len(people)):
   view.setItem(y, 0, QtGui.QTableWidgetItem(name[x][:-1][1:]))

ここでy、inview.setItem(y, 0, QtGui.QTableWidgetItem(name[x][:-1][1:]))はテーブルの行インデックスで、指定されたIDの名前でテーブルを作成します。

これは、3つのIDが指定された結果です。

|  Jhon   |
|  Jhon   |
|  Jhon   |

これが私が表示したいものです:

|  Sally  |
|  kate   |
|  Jhon   |

何か助けはありますか?

4

2 に答える 2

2

ここが欲しいと思いますenumerate

for idx,x in enumerate(people):
    view.setItem(idx, 0, QtGui.QTableWidgetItem(name[x][:-1][1:]))
于 2012-09-07T14:12:28.407 に答える
1

あなたはすべての人々をループし、すべての行にそれらを設定しています。最後に出会った人は、何も上書きされていないので、当然すべての行に設定されます。

于 2012-09-07T14:12:44.963 に答える