Pythonお悩み解決 - Python文法
PyQチームのtsutomuです。 今回は、PyQのお問い合わせにあった問題の解決方法を考えてみます。 質問 書いたコード 回答 辞書は任意のキーを使ってもエラーにならない 解決方法 修正後の結果 このお悩み解決に関連するクエスト 質問 コンピューターとじゃんけ…
こんにちは。PyQサポートです。 今回は「**kwargsの前の/」の記述に関する質問です。 質問 プログラムの該当箇所 TypeErrorになるコード 模範解答のコード 回答 **kwargsの前の/が表すもの 1回目のupdateで行われる処理 2回目のupdateで行われる処理 まとめ …
こんにちは、id:hirokikyです。 今日は、「Pythonでリストのスライスに .append してもリストが変更されないぞ?」という問題の解決法を説明します。 直接この記事がお役に立てるかはわかりませんが、Pythonにおけるリストやスライス、 .append について知る…
こんにちはPyQサポートです。 今回は、Python初心者の方に「print() 関数内でカンマを使っても、スペースができない方法」を紹介します。 質問 書いたコード 実行結果 回答 区切り文字を指定しましょう 解説 書いたコード 実行結果 print('これは', 'テスト'…
こんにちはPyQサポートです。今回は、「for文と内包表記のどちらを使うべきか」を紹介します。 内包表記とは イテラブル 変数itrがイテラブルのときの特徴 いただいた質問 内包表記を使わないプログラム 内包表記を使ったプログラム 回答 内包表記とは [要素…
こんにちはid:hirokikyです。 今回はPyQの学習サポートプランでよくいただく*args、**kwargsに関する質問です。 この機能は必ず知っていないといけないというものではありませんが、デコレーターを定義する際やクラスの継承をする際に必要となってきます。 …
質問 文字列から一部抽出できることは便利だと思いますが、実務で使うイメージが湧きません。 以下の問題で「火・水・木曜日」を抜き出せた時はうれしかったのですが、何の目的で中途半端に抜き出すのか分かりませんでした。 解説では「スライスはよく使いま…
こんにちはPyQサポートです。 今回はプログラムの変数名のつけ方を紹介します。 質問 下記のコードは、なぜitemとitemsという類似した変数名を使用しているのででしょうか。 非常に似ているのでわかりづらい印象を持ちました。 また、変数は自分で設定できる…
こんにちはPyQサポートです。 今回はPythonで定数に分離する意味を紹介します。 質問 SALES_FILE_REGEX = re.compile(r"sales_raw_(\d{4})(\d{2})(\d{2}).csv") def main(): sales = [] for name in os.listdir("input/"): m = SALES_FILE_REGEX.search(name…
id:hirokikyです。 今日はお客様からよくいただく、Pythonのデータ構造に関する質問を解説します。 質問: なぜPythonで「辞書のリスト」が使われる? 回答 Pythonで辞書のリストを活用する ここでのポイント なぜPythonの「リストのリスト」ではダメなのか?…
こんにちはPyQサポートです。 今回は、「コメント(#)とdocstring(""")の違い」を解説します。 質問 回答 # から始まる行はコメントです """ で文字列を囲んだものの説明 docstringとは何? コメントに「何をしているか」をなるべく書かない まとめ 質問 この…
こんにちはPyQサポートです。 今回は、「スライスを使い、先頭文字列を取り出したいのですが、なぜ実行されないのでしょうか?」という質問の解決法を紹介します。 質問 回答 動かない箇所から遡って原因を特定する考え方 出力結果 まとめ 質問 文字列の先頭…
こんにちはPyQサポートです。 今回は ==とin の使い分けについて紹介します。 質問 回答・解説 ==とinの違い 「in」演算子 サンプルコード Python公式ドキュメント:in演算 部分シーケンス判定のサンプルコード 包含判定のサンプルコード 質問 PyQクエスト19…
こんにちは。PyQサポートです。 質問 回答 タプルのアンパック サンプルコード1 アンパックではないタプルの代入の例 サンプルコード2 質問 タプルの解説の中で、「複数の変数に要素を代入する際 a, b = 100, 200 のように()を付けないこともできる」とあり…
こんにちは、PyQサポートです。 今日は、辞書の get メソッドを紹介します。 質問 回答 指定したキーがない場合 質問 「name = employees.get(employee_id)」の「employees.get」について、この.getはどのような処理をするものなのでしょうか? 回答 辞書.ge…
こんにちは、PyQサポートです。 今日は、for文などで利用される enumerate のオプションを紹介します。 質問 回答 具体例 質問 for index, work_time in enumerate(work_time_list, start=1) このコードの start=1 とはなんですか? 回答 for文で enumerate …
ブール演算子 `or` の使い方について紹介します。 質問:「if name == 'うな重' or 'ビビンバ丼':」を実行してもすべてのnameに当てはまってしまいました。なぜでしょうか?
こんにちは、kamekoです。 行末に書かれた \ について解説します。 質問 回答 公式ドキュメント:字句解析 - 明示的な行継続 公式ドキュメント:字句解析 - 非明示的な行継続 質問 矢印箇所のバックスラッシュの意味を教えてほしいです。 for name in os.lis…
PyQサポートのkamekoです。今日は、関数呼び出し時のキーワード引数の書き方について解説します。 質問 回答 引用: PEP 8 -- Style Guide for Python Code 質問 PEP8のクエストを消化した際に 「=の前後にスペースを入れる」とあったと思うのですが、以下の…
今回のPythonお悩み解決は、プロのコードの書き方についてです。Pythonだけに限らず、プログラミングの全般に言える話だと思いますので、他の言語を学び始めた方もぜひ読んでみてください。
id:hirokiky です。 Pythonお悩み解決は、PyQスタンダードプラン(https://pyq.jp/pricing/)の質問からピックアップしてPythonの疑問を紹介します。この記事では、質問が複数あった「 Pythonで `クラス.メソッド()` のように呼び出せるものがあるのですが、…
質問 「 ifとtry...exceptはどう使い分けるんですか?違いは何ですか?」 質問 回答 例外についてのおさらい 例外のサンプルコード 例外をif で避けるのかexceptするのかの使い分け 例外の処理にifを使う場合 例外の処理にexceptを使う場合 具体例 例外を例…
Pythonでは、値がNoneかどうかの判定に` if name is None: `を使います。ですが、` if name == None: `としても、プログラムの実行結果は同じになります。isを使ったほうがいい理由、同値性と同一性について解説します。