2026/04/23 追記:完走しました!
無事に100問を解き終えました!
- かかった期間:約1週間
- 得られたもの:Pythonの基本文法
- 課題:内包表記を冗長に書いてしまうこと。
- Next Step: numpy100本ノックの完走
Python100本ノック
はじめに
こんにちは。ある旧帝の機械系の学生ですが、これから情報系の研究室に進むにあたってPythonの勉強を始めました。
まずは基礎を固めるために「Python100本ノック」に挑戦します。
学習の記録を残していこうと思います。
参考にしている記事
今回は、こちらの記事で紹介されている問題に挑戦しています。
Python 入門100本ノック
今回の進歩と学んだこと
現在は前半問題の1問目から47問目まで完了しました。
文字列操作
- "replace()"は数を指定しなければ、すべて置換される
text = "apple, orange, apple"
print(text.replace("apple", "banana"))
# 結果: "banana, orange, banana"
text = "apple, apple, apple"
# 最初の1つだけ置換
print(text.replace("apple", "banana", 1))
# 結果: "banana, apple, apple"
型によってきまるメソッド
-
join()は「文字列」のメソッド -
append()は「リスト」のメソッド
lst = ["Python", "100", "Knock"]
# 〇 正解:区切りたい「文字」に対して .join() を使う
result = "-".join(lst)
print(result)
# 結果:Python-100-Knock
# × 間違い:リストに対して .join() は使えない
# lst.join("-")
lst = [1, 2, 3]
# 〇 正解:リストに対して使う
lst.append(4)
# × 間違い:文字列に対しては使えない
text = "123"
# text.append("4")
このように、「どの型に対して、どのメソッドが使えるのか」を意識することがエラーを減らせるコツだと感じました。
GitHubでの管理
学習したコードはGitHubで公開するようにしました。
PyCharmからの連携や、ブランチの整理に苦戦しましたが、なんとかアップロードできました。
終わりに
これからもコツコツと100本完了を目指して頑張ります!