Python学習チャンネル by PyQ

Pythonのオンライン学習プラットフォームPyQのオフィシャルブログです

Pythonお悩み解決

学習サポートに寄せられた質問を元に、Pythonの様々な疑問にプロのプログラマーが回答する連載記事です。

「どちらを使っても良い?」「==」と「in」の使い分けについて紹介します

こんにちはPyQサポートです。 今回は ==とin の使い分けについて紹介します。 質問 回答・解説 ==とinの違い 「in」演算子 サンプルコード Python公式ドキュメント:in演算 部分シーケンス判定のサンプルコード 包含判定のサンプルコード 質問 PyQクエスト19…

「Pythonで、 `a, b = 100, 200` などの、カンマ区切りの複数の値や変数は何ですか?」タプルのアンパックについて解説します

こんにちは。PyQサポートです。 質問 回答 タプルのアンパック サンプルコード1 アンパックではないタプルの代入の例 サンプルコード2 質問 タプルの解説の中で、「複数の変数に要素を代入する際 a, b = 100, 200 のように()を付けないこともできる」とあり…

辞書.getはどのような処理をするものなのでしょうか?という質問に回答しながら辞書.getについて解説します

こんにちは、PyQサポートです。 今日は、辞書の get メソッドを紹介します。 質問 回答 指定したキーがない場合 質問 「name = employees.get(employee_id)」の「employees.get」について、この.getはどのような処理をするものなのでしょうか? 回答 辞書.ge…

enumerateのオプションの紹介

こんにちは、PyQサポートです。 今日は、for文などで利用される enumerate のオプションを紹介します。 質問 回答 具体例 質問 for index, work_time in enumerate(work_time_list, start=1) このコードの start=1 とはなんですか? 回答 for文で enumerate …

人気プログラミング言語Pythonについてプログラミング未経験の人でもわかりやすいようにまとめてみました

こんにちは、konieです。 近年人気のプログラミング言語のPythonですが、どんなものか知っていますか? 他のプログラミング言語とどう違うの?どういうことができるの? そんな疑問を持っている人にお応えするため、今までにPyQから配信した記事の中から、Py…

正規表現の先頭につく`r`は何ですか?エスケープシーケンスやrow文字列を解説します

こんにちは、PyQサポートです。 今日は、正規表現を指定する文字列についている r について紹介します。 質問 回答 特別に解釈される文字 r をつけなくても同じ結果になる理由 質問 if not re.match(r'\d\d\d-\d\d\d\d$', columns[1]): のr'\d\d\dのrですが…

文字列を扱う時の or について。「『if name == 'うな重' or 'ビビンバ丼':』 がうまく動作しません」

ブール演算子 `or` の使い方について紹介します。 質問:「if name == 'うな重' or 'ビビンバ丼':」を実行してもすべてのnameに当てはまってしまいました。なぜでしょうか?

行の最後の「 \ 」とはなんですか?

こんにちは、kamekoです。 行末に書かれた \ について解説します。 質問 回答 公式ドキュメント:字句解析 - 明示的な行継続 公式ドキュメント:字句解析 - 非明示的な行継続 質問 矢印箇所のバックスラッシュの意味を教えてほしいです。 for name in os.lis…

文字列と数値の結合時のエラー「TypeError: must be str, not int」とは?

Pythonお悩み解決は、Python学習サービスPyQの「学習サポート」に寄せられた質問を元に、みなさんのPythonのお悩みにお答えします。 今日は、文字列と数値を結合する際に発生するエラー「TypeError: must be str, not int」を解説します。

with open()などのカッコ中の「=」の前後に、スペースは不要なのですか?

PyQサポートのkamekoです。今日は、関数呼び出し時のキーワード引数の書き方について解説します。 質問 回答 引用: PEP 8 -- Style Guide for Python Code 質問 PEP8のクエストを消化した際に 「=の前後にスペースを入れる」とあったと思うのですが、以下の…

公式ドキュメントの用語が理解できません。調べながら全て読んだ方がいいですか?

質問 回答 公式ドキュメントを読むべき理由 1. 公式ドキュメントにかかれていることが正であること 2. 公式ドキュメントは情報が網羅されていること まずは動かしてみることも大切です PyQサポートのsusumuisです。 今日は、学習サポートに寄せられた公式ド…

正規表現: [^a-z0-9_]の 意味を解説します。「 bool(re.match('[^a-z0-9_]+', '')) でFALSEになる例はありますか?」

PyQサポートのkamekoです。今日は、正規表現の文字クラス内で使われる記号 ^ について解説します。 質問 回答 公式ドキュメント:正規表現 HOWTO 質問 [^a-z0-9_]の意味が良く分かりません。 print(bool(re.match('[^a-z0-9_]+', ''))) でFALSEになる例はあ…

「pandasで、A列からB列の文字を除いた列Cを作成するには?」applyを使った効率的な処理方法

PyQ開発チームの斎藤です。 データ分析のライブラリーであるpandasは、非常に便利ですが、なかなか効率的な書き方がわからないことがあります。ここでは、PyQに来た質問を例に「表のA列からB列の文字を除いた列Cを作成する」方法を紹介します。

「文法が覚えられない!」プログラミング初心者に伝えたい、丸暗記しないプロのコードの書き方

こんにちは。PyQチームのnao_yです。 プログラミング初学者の方は「プロはどうやってコードを書いているんだろうと気になったことが一度はあるかと思います。今回はそんな疑問を解決していきます。 Pythonだけに限らず、プログラミングの全般に言える話だと…

Pythonのクラスメソッド(@classmethod)とは?使いどころとメソッドとの違いを解説

id:hirokiky です。 Pythonお悩み解決は、PyQスタンダードプラン(https://pyq.jp/pricing/)の質問からピックアップしてPythonの疑問を紹介します。この記事では、質問が複数あった「 Pythonで `クラス.メソッド()` のように呼び出せるものがあるのですが、…

str.splitとre.splitの違いを、具体例を交えて解説します。「正規表現パターンで文字列を分割する」とは?

PyQサポートのkamekoです。今日は、文字列を正規表現パターンで分割するre.splitについて、 str.splitとの違いを具体例で比べながら解説します。 質問 回答:str.splitとre.splitの解説 公式ドキュメント:str.split 公式ドキュメント:re.split .splitの解…

正規表現の [] はどのような記号ですか?正規表現の中で文字の集合指定について解説します。

こんにちは、PyQサポートkamekoです。正規表現の記号 [] について解説します。 質問 回答 具体例 正規表現の他の記号について 質問 正規表現で、「[//\t]+」はどういう意味ですか? 回答 記号 [] は、 [ と ] の中の文字のいずれかの1文字を意味します。 記…

ifとtry...exceptはどう使い分けるんですか?違いは何ですか?

質問 「 ifとtry...exceptはどう使い分けるんですか?違いは何ですか?」 質問 回答 例外についてのおさらい 例外のサンプルコード 例外をif で避けるのかexceptするのかの使い分け 例外の処理にifを使う場合 例外の処理にexceptを使う場合 具体例 例外を例…

正規表現の * と + はどのような記号ですか?

こんにちは、PyQサポートkamekoです。正規表現の記号 + と、似た記号 * について解説します。 質問 回答 +は直前の記号を「1回以上」繰り返す 具体例 直前の文字が含まれていない時もマッチさせたいときは*を使う 具体例 正規表現の他の記号について 質問 正…

Noneの判定に==ではなくisを使う理由。同値性と同一性を解説します

質問 回答 同値性と同一性 同値性を検査する== 同一性を検査するis 具体的なif name is Noneとif name == Noneの違い if name is Noneと書いてあった場合 if name == Noneと書いてあった場合 参考コード 質問 PyQの問題に、「値がNoneかを判定するには==演算…

SyntaxError: SyntaxError EOL while scanning string literalの読み解き方と解決方法を紹介します。

こんにちは。PyQチームのnao_yです。 このPythonお悩み解決では、SyntaxErrorの原因とエラーの読み解き方を紹介します。 SyntaxErrorとは? エラー例 エラーメッセージ エラーを読み解こう SyntaxErrorとは? SyntaxErrorはプログラムがPythonの文法として正…

SyntaxError: unexpected EOF while parsingの読み解き方と解決方法を紹介します

こんにちは。PyQチームのnao_yです。 このPythonお悩み解決では、SyntaxErrorの原因とエラーの読み解き方を紹介します。 SyntaxErrorとは? エラー例 エラーメッセージ エラーを読み解こう SyntaxErrorとは? SyntaxErrorはプログラムがPythonの文法として正…

PyQの問題で、模範回答をコピー&ペーストしても エラーが出る時の解消法と難しい問題をスキップしたい時のやり方を紹介します。

こんにちは、PyQ開発チームの斎藤です。 PyQへのよくある質問について、解説します。 エラーが解消できません 原因その1 原因その2 問題が難しいので、スキップしたい エラーが解消できません 写経通りにコピペしてもエラーになります 原因その1 原因として…

マージができないpandas.DataFrameを一度ファイルに保存して読み込み直すとマージできます。なぜですか?

こんにちは、PyQ開発チームの斎藤です。 PyQへの質問で、pandas関連の質問をご紹介します。 なお、質問内容は、適宜アレンジしています。 質問 具体例 上手くいくケース 上手くいかないケース 原因 質問 2つの表を管理しています。片方の表を更新してマージ…

pandasで特定のパターンを抜き出すにはどうすればいいですか? - containsを使って特定の文字列が入った行を抜き出す方法

こんにちは、PyQ開発チームの斎藤です。 PyQへの質問で、pandas関連の質問をご紹介します。 なお、質問内容は、適宜アレンジしています。 質問 特定の文字列が入った行を抜き出したい 具体例を通して見ていきましょう。 df = pd.DataFrame( [['python', 1991…

Pythonのandとorはif文以外でも使える?andとorの動作が面白いという話をします

「Pythonお悩み解決」コーナーでは、オンラインPython学習サービスPyQ(パイキュー)寄せられたPython学習の質問・回答をピックアップして回答しています。今回は論理演算子andとorの動きについて、少し深く解説しています。

pandasで、スクレイピングしたデータの差分を更新するにはどうすればいいですか?

オンラインPython学習サービスPyQ(パイキュー)に寄せられたPythonの質問と回答をピックアップして紹介する「Pythonお悩み解決」シリーズです。「webサイトをスクレイピングして、結果をpandasのDataFrameで保持しています。差分のDataFrameを取得した時に…

プログラムの設計について。「関数ってどうして必要なんでしょうか?」に実際の業務でのポイントも踏まえて解説します

オンラインPython学習サービスPyQ(パイキュー)の学習サポートに寄せられたPython全般の質問に答える「Pythonお悩み解決」です。今回は、「何度も行う処理を関数にまとめる」ことの意味やメリットを説明します。

PythonのIndentationError: unexpected indent は何ですか?

オンラインPython学習サービスであるPyQ(パイキュー)の学習サポートに寄せられた質問をQ&A形式でお答えします。Pythonを書き始めて一番目にするエラーの1つ、IndentationError** について解説します。

正規表現「[^、]*、([^、]*)、(\d+)円$」の意味と、正規表現の中のカッコ:メソッド `group `の解説

大村こんにちは、PyQサポートの大村です。今日のPythonお悩み解決は、正規表現 についてです。 pyq.jp Pythonお悩み解決とは? オンライン学習サービス「PyQ」のサービスの一つ、学習サポートに寄せられた質問の中から PyQユーザーだけでなく、学習者みなさ…

Copyright ©2017-2019 BeProud Inc. All rights reserved.