[解決済み] Python リストに項目をN回追加する
2022-10-02 10:49:29
質問
これは、Pythonがショートカットを持っているようなものです。私はリストにN回アイテムを追加したい、効果的にこれを行う。
l = []
x = 0
for i in range(100):
l.append(x)
そのための "optimized" のようなメソッドがあってもよさそうなものです。
l.append_multiple(x, 100)
ありますか?
どのように解決するのですか?
immutableなデータ型の場合。
l = [0] * 100
# [0, 0, 0, 0, 0, ...]
l = ['foo'] * 100
# ['foo', 'foo', 'foo', 'foo', ...]
参照によって保存され、後で修正したいような値のために(サブリストやディクショナリなど)。
l = [{} for x in range(100)]
(最初の方法がintや文字列のような定数値に対してのみ良いアイデアである理由は、intや文字列のような定数値のために
<list>*<number>
構文では浅いコピーしか行われないためです。
[{}]*100
のようにすると、同じ辞書への参照が100個になってしまうので、そのうちの1個を変更すると全部変わってしまいます。int や文字列は不変なので、これは問題ではありません)。
既存のリストに追加したい場合は、リスト内で
extend()
メソッドでそのリストに追加することができます(上記の手法で追加するリストを生成することと合わせて)。
a = [1,2,3]
b = [4,5,6]
a.extend(b)
# a is now [1,2,3,4,5,6]
関連
-
[解決済み] リストのリストからフラットなリストを作るには?
-
[解決済み] リスト内のアイテムのインデックスを検索する
-
[解決済み] バイトを文字列に変換する
-
[解決済み] Pythonのリストメソッドであるappendとextendの違いは何ですか?
-
[解決済み] 最小限の驚き」と「変更可能なデフォルトの引数
-
[解決済み] リストを均等な大きさの塊に分割するには?
-
[解決済み] Python 3で「1000000000000000 in range(1000000000000001)」はなぜ速いのですか?
-
[解決済み] インデックスを指定してリストから要素を削除する方法
-
[解決済み】Pythonに三項条件演算子はありますか?
-
[解決済み】2つの辞書を1つの式でマージする(辞書の和をとる)には?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Jupyterノートブックでenv変数を設定する方法
-
[解決済み] Pythonです。未束縛のメソッドを束縛する?
-
[解決済み] Flaskで1時間ごとに関数を実行するようにスケジュールするには?
-
[解決済み] django.db.migrations.exceptions.InconsistentMigrationHistory
-
[解決済み] Django Rest Framework ファイルアップロード
-
[解決済み] 文字列のリストを内容に基づいてフィルタリングする
-
[解決済み] 古いバージョンのPythonにおける辞書のキーの並び順
-
[解決済み] サブフォルダからのインポートモジュール
-
[解決済み] Pythonでマルチプロセッシングキューを使うには?
-
[解決済み] Pythonの辞書にあるスレッドセーフについて