質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

499閲覧

pythonのforを使用したコードの動作

kiyoharu

総合スコア1

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2021/06/13 03:08

pythonを学習しており、質問があります。
書きコードは出力としては同じですが、動作プロセスの違いを理解したく質問さていただきます。

<1>
tv = ["GOT","Narcos","Vice"]
for i,new in enumerate(tv):
new = tv[i]
new = new.upper()
tv[i] = new

print(tv)

<2>
tv = ["Got","Narcos","Vice"]
all_show = []
for show in tv:
show = show.upper()
all_show.append(show)

print (all_show)

<3>
tv = ["Got","Narcos","Vice"]
i = 0
for show in tv:
new = tv[i].upper()
tv[i] = new
i += 1

print(tv)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

1T2R3M4

2021/06/13 03:10

indentationerror出ませんか。
itagagaki

2021/06/13 03:19

コードは ``` コード全体 ``` で記述してください。そうしないとインデントが失われるので。 特にPythonの場合インデントは大事ですし。
guest

回答1

0

ベストアンサー

何が知りたいんだかわかりませんが、

配列の内容を大文字化して表示する処理で、

  1. enumerateで番号付けをして、元のtvを上書きしている。

「new = tv[i]」 の行は不要

  1. 単に1つずつ取り出して、別の配列all_showに追加している。

  2. やりかたは2と同じだか、元の配列tvを上書きしている。

ですかね、1と3は元の配列が変っているけど、2は元の配列がそのままであることが一番のちがいかな。

投稿2021/06/13 03:25

TakaiY

総合スコア13790

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kiyoharu

2021/06/13 03:32 編集

違いがよくわかりました、ありがとうございます! (独学プログラマーという本にあったコードなのですが、違いが分かっていませんでした)
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問