問題
次のコードを実行した時の出力として正しいものは A 〜 D のどれでしょうか?

解答
正解は。。。
正解は B の
[3, 2, 1, 5, 4]です。
解説
今回はリストのスライス操作に関する問題です。
リストについては下記記事も参考になると思います。
スライス操作はリストの一部を切り出したい時に使います。
start、stop、stepの3つを指定して切り出すことができます。
問題にあるdata[-3::-1]は、start が -3、stop は指定なし、step が -1、になります。
後ろから3番目の要素から始まり、step が -1 なので、1つずつ前に遡ります。
data = [1, 2, 3, 4, 5]なので、data[-3]は3で、data[-3::-1]は[3, 2, 1]となります。
次にdata[:2:-1]は、start が指定なし、stop が2、step が-1、です。
start の指定が無い場合は step によって start が変わります。
step が正の整数なら0、負の整数なら-1になります。
また、stop が 2ですが、stop に指定された要素は含まれず、その手前までが切り出されます。
そのためdata[:2:-1]は[5, 4]となります。
したがって、[3, 2, 1] + [5, 4]となり、出力は[3, 2, 1, 5, 4]となります。
Google Colaboratory
下記リンクからアクセスして、Google Colaboratory 上で実際にコードを実行して、結果を確認していただけます。
おわりに
X で Python クイズを配信しています。
#Pythonクイズ
— Taklog (@taklog_info) September 29, 2023
No.12
次のコードを実行した時の出力として正しいものは A 〜 D のどれでしょうか? #Python #pythonprogramming pic.twitter.com/jOX7RxY8to
よかったらフォローしてください!
以上です。




コメント