タグ

ブックマーク / note.nkmk.me (12)

  • Pythonで文字列・数値をゼロ埋め(ゼロパディング) | note.nkmk.me

    右寄せゼロ埋め: zfill() 一番シンプルなのは文字列strのzfill()メソッドを使う方法。 組み込み型 - str.zfill() — Python 3.11.3 ドキュメント 引数に文字数を指定すると、元の文字列が右寄せされて残り(左側)がゼロで埋められた文字列を返す。

    Pythonで文字列・数値をゼロ埋め(ゼロパディング) | note.nkmk.me
  • Pythonでファイル名・ディレクトリ名の一覧をリストで取得 | note.nkmk.me

    Pythonでディレクトリ内(フォルダ内)のファイル名・ディレクトリ名(フォルダ名)の一覧を取得するには、osモジュールのos.listdir()関数を使う。 os.listdir() --- 雑多なオペレーティングシステムインターフェース — Python 3.11.4 ドキュメント globモジュールやpathlibモジュールを使ってファイル名・ディレクトリ名(フォルダ名)の一覧を取得する方法もある。ワイルドカード*などを使った条件指定やサブディレクトリを含めた再帰的な抽出が可能。 関連記事: Pythonで条件を満たすパスの一覧を再帰的に取得するglobの使い方 関連記事: Python, pathlibでファイル一覧を取得(glob, iterdir) 以下のファイル・ディレクトリ構造を例とする。

    Pythonでファイル名・ディレクトリ名の一覧をリストで取得 | note.nkmk.me
  • Pythonで文字列を分割(区切り文字、改行、正規表現、文字数) | note.nkmk.me

    区切り文字で分割: split() 区切り文字で分割するには文字列(str型)のsplit()メソッドを使う。 組み込み型 - str.split() — Python 3.11.4 ドキュメント デフォルトは空白文字(スペースや改行\n、タブ\tなど)で分割する。連続する空白文字はまとめて処理される。 戻り値はリスト。 s_blank = 'one two three\nfour\tfive' print(s_blank) # one two three # four five print(s_blank.split()) # ['one', 'two', 'three', 'four', 'five'] print(type(s_blank.split())) # <class 'list'>

    Pythonで文字列を分割(区切り文字、改行、正規表現、文字数) | note.nkmk.me
  • Pythonで数字の文字列strを数値int, floatに変換 | note.nkmk.me

    Pythonで数字の文字列strを数値に変換したい場合、整数に変換するにはint()、浮動小数点数に変換するにはfloat()を使う。 なお、数値を文字列に変換する場合はstr()を使えばよい。 数値や文字列を0埋めや2進数、8進数、16進数、指数表記など様々な書式に変換したい場合はformat()関数または文字列メソッドstr.format()を使う。以下の記事を参照。 関連記事: Python, formatで書式変換(0埋め、指数表記、16進数など) また、文字列のリストを数値のリストに変換することもできる。以下の記事を参照。 関連記事: Pythonで文字列のリスト(配列)と数値のリストを相互に変換

    Pythonで数字の文字列strを数値int, floatに変換 | note.nkmk.me
  • Pythonの正規表現モジュールreの使い方(match, search, subなど) | note.nkmk.me

    Pythonで正規表現の処理を行うには標準ライブラリのreモジュールを使う。正規表現パターンによる文字列の抽出や置換、分割などができる。 re --- 正規表現操作 — Python 3.11.3 ドキュメント 正規表現 HOWTO — Python 3.11.3 ドキュメント ここではまずreモジュールの関数やメソッドについて説明し、そのあとで、reモジュールで使える正規表現のメタ文字(特殊文字)・特殊シーケンスについて説明する。基的には標準的な正規表現のシンタックスだが、フラグの設定(特にre.ASCII)は要注意。 正規表現パターンをコンパイル: compile() reモジュールで正規表現の処理を実行する方法は2つある。 関数で実行 1つ目は関数。re.match(), re.sub()のように正規表現パターンを用いた抽出や置換などの処理を行う関数が用意されている。 関数の詳細に

    Pythonの正規表現モジュールreの使い方(match, search, subなど) | note.nkmk.me
  • Pythonのrange関数の使い方 | note.nkmk.me

    range()とrange型 Python3のrange()はrange型オブジェクトを生成する。記事のタイトルでは便宜上「range関数」としているが、関数というよりrange型のコンストラクタといったほうが正確。 組み込み型 - range — Python 3.11.3 ドキュメント range型オブジェクトは値を必要なときに生成するため、print()で出力しても中身は表示されない。イテラブル(反復可能)オブジェクトなのでfor文ではそのまま使える。

    Pythonのrange関数の使い方 | note.nkmk.me
  • Python, formatで書式変換(0埋め、指数表記、16進数など) | note.nkmk.me

    なお、Python3.6から文字列メソッドstr.format()をより簡潔に記述できるf文字列(f-strings)が追加された。以下の記事を参照。 関連記事: Pythonのf文字列(フォーマット済み文字列リテラル)の使い方 組み込み関数 format() 組み込み関数としてformat()が提供されている。 組み込み関数 - format() — Python 3.11.3 ドキュメント 第一引数に元の文字列strや数値int, floatなど、第二引数に書式指定文字列を指定すると、書式化された文字列strが返される。 例を示す。書式指定文字列の書き方については後述。 i = 255 print(format(i, '#04x')) print(type(format(i, '#04x'))) # 0xff # <class 'str'> s = 'abc' print(format

    Python, formatで書式変換(0埋め、指数表記、16進数など) | note.nkmk.me
  • Python, feedparserでRSS, Atomフィードを解析 | note.nkmk.me

    Pythonのサードパーティライブラリfeedparserを使うと、RSS / Atomフィードを解析(パース)してサイトの新着記事などの情報を抽出できる。フォーマットの仕様の違いをfeedparserが吸収してくれるので、どんなフォーマットでも同じように扱える。 kurtmckee/feedparser: Parse feeds in Python Documentation — feedparser 5.2.0 documentation ここでは以下の内容について説明する。サンプルコードのfeedparserのバージョンは5.2.1。 フィードのフォーマット feedparserのインストール feedparserの基的な使い方 feedparserで取得できる情報 フィードから新着記事のURL・タイトルのリストを抽出 フィードのフォーマット ウェブサイトのコンテンツの概要を配信す

    Python, feedparserでRSS, Atomフィードを解析 | note.nkmk.me
  • Pythonでリスト(配列)に要素を追加するappend, extend, insert | note.nkmk.me

    リストの要素の削除については以下の記事を参照。 関連記事: Pythonでリスト(配列)の要素を削除するclear, pop, remove, del なお、リストは異なる型のデータを格納可能で、厳密には配列とは異なる。配列を扱いたい場合はarray(標準ライブラリ)やNumPyを使う。 関連記事: Pythonのリストと配列とnumpy.ndarrayの違いと使い分け リストの末尾に要素を追加: append() リストのappend()メソッドで、末尾(最後)に要素を追加できる。先頭など、末尾以外の位置に追加したい場合は後述のinsert()を使う。

    Pythonでリスト(配列)に要素を追加するappend, extend, insert | note.nkmk.me
  • Pythonでコマンドライン引数を扱う方法(sys.argv, argparse) | note.nkmk.me

    Pythonでコマンドライン引数を扱うには、sysモジュールのargvかargparseモジュールを使う。sysもargparseも標準ライブラリに含まれているので追加のインストールは不要。 sys.argv --- システムパラメータと関数 — Python 3.11.4 ドキュメント argparse --- コマンドラインオプション、引数、サブコマンドのパーサー — Python 3.11.4 ドキュメント sys.argvは非常にシンプルで簡単に使えるが、引数の個数に応じた処理や型変換を自分で行う必要がある。argparseは設定のためのコードが必要だが、オプションを使ったり任意の個数の引数を扱ったりできる。 決まった個数の引数に対して処理を行うのであればsys.argvで十分だが、コマンドラインツールとして使うような場合はargparseを使ったほうが柔軟に引数を処理できて便利。

    Pythonでコマンドライン引数を扱う方法(sys.argv, argparse) | note.nkmk.me
  • pandas.DataFrameの構造とその作成方法 | note.nkmk.me

    pandas.DataFrameは二次元の表形式のデータ(テーブルデータ)を表す、pandasの基的な型。 DataFrame — pandas 2.0.3 documentation pandas.DataFrame — pandas 2.0.3 documentation ここでは、はじめにpandas.DataFrameの構造と基操作について説明し、そのあとでコンストラクタpandas.DataFrame()による作成方法およびファイルからの読み込み方法について説明する。 一次元データであるpandas.Seriesからpandas.DataFrameを生成する方法については以下の記事を参照。 関連記事: pandas.DataFrameとSeriesを相互に変換 記事のサンプルコードのpandasのバージョンは以下の通り。バージョンによって仕様が異なる可能性があるので注意。N

    pandas.DataFrameの構造とその作成方法 | note.nkmk.me
  • Pythonでパス文字列からファイル名・フォルダ名・拡張子を取得、結合 | note.nkmk.me

    実行環境はMacWindowsの場合の例は最後に示す。 なお、ここで説明するのはパス文字列からファイル名・フォルダ名(ディレクトリ名)を取得(抽出)する方法。フォルダ内に存在するファイル名一覧・パス一覧などを取得したい場合は以下の記事を参照。 関連記事: Pythonでファイル名・ディレクトリ名の一覧をリストで取得 また、Python3.4以降ではパスをオブジェクトとして操作できるpathlibモジュールを使って同様にファイル名やフォルダ名、拡張子などを抽出することもできる。慣れるとpathlibのほうが使いやすい。 関連記事: Python, pathlibでファイル名・拡張子・親ディレクトリを取得 OSによるパスの区切り文字の違い パスの区切り文字はOSによって異なる。 UNIX(Macを含む)ではスラッシュ/、Windowsではバックスラッシュ\が使われる。 Pythonが動作して

    Pythonでパス文字列からファイル名・フォルダ名・拡張子を取得、結合 | note.nkmk.me
    msh514
    msh514 2019/07/09
    python path file
  • 1