Q&A
解決済
2回答
541閲覧
総合スコア34
Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。
0グッド
0クリップ
投稿2020/08/10 11:23
0
リストの挙動について、理解できない箇所があります。
lst = ['A', 'B', 'C', 'D', 'E']
lst[1:4] = ['あ']
・想定していた実行結果 リストの2番目から、3番目に'あ'を挿入するので、下記のようになると考えました。 lst = ['A', 'あ', 'あ', 'D', 'E']
・実際の結果 lst: ['A', 'あ', 'E']
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
質問へのコメント
回答2件
理解が間違ってます。 組み込み型 — Python 3.8.5 ドキュメント の「ミュータブルなシーケンス型」のところ参照。
リストの2番目から、3番目に'あ'を挿入するので、
じゃなくて、「リストの2番目から3番目のスライスと、'あ'を入れ替えます」です。
投稿2020/08/10 12:44
総合スコア86461
回答へのコメント
2020/08/11 01:09
ベストアンサー
Python 2.3 の新機能説明でスライスへの代入の仕様が説明されていました: 15 Extended Slices
Assignment to a regular slice can be used to change the length of the sequence:
python1>>> a = range(3) 2>>> a 3[0, 1, 2] 4>>> a[1:3] = [4, 5, 6] 5>>> a 6[0, 4, 5, 6]
python
1>>> a = range(3) 2>>> a 3[0, 1, 2] 4>>> a[1:3] = [4, 5, 6] 5>>> a 6[0, 4, 5, 6]
これは日本語訳すると、大体次のような意味です
通常のスライスへの割り当ては、シーケンス (訳注: リストや配列など) の長さを変更するために使用できます
この例は代入によってリストの長さを増やしていますが、 逆に長さを減らすこともできるように設計されているのだと考えられます
投稿2020/08/10 11:56
総合スコア3272
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.29%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
pythonのリストについて
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/11 01:09