yucatio@システムエンジニア

趣味で作ったものいろいろ

Python

PythonでSetのSetを作成する

PythonでSetのSetを作成しようとするとエラーになります。 my_set = set() my_set.add({1, 2, 3}) # => TypeError: unhashable type: 'set' Pythonでは、Setの各要素はハッシュ可能(hashable)でなければいけません。 Pythonの組み込み型でハッシュ可能なのは…

Pythonで辞書が格納されたリストを複数のキーで並べ変える

辞書を格納したリストがある時、複数キーで並び変える方法を紹介します。例えば、以下のような辞書が格納された配列で、まずprice順に並び変え、priceが同じだったら、weightの順番に並び変えたい場合の方法です。 list1 = [ {'name': 'ぶどう', 'price': 50…

Pythonのconfigparserでセクションがない設定ファイルを(無理矢理)読む

背景 PythonでJavaのMANIFEST.MFファイルを読んで表示するプログラムを書く必要がありました。 MANIFEST.MFファイルは以下のような形式です。 Manifest-Version: 1.0 Built-By: yucatio Build-Jdk: 11.0.5 Created-By: Maven Integration for Eclipse Implem…

JavaScript Ruby Pythonで文字列中に変数を展開できる機能の名前と書き方

こんにちは。JavaScriptとRubyとPythonが頭の中でごちゃごちゃになっているブログ主です。 JavaScriptとRubyとPythonの文字列中に変数を展開できる機能の名前と書き方が頭の中でごちゃごちゃです。 RubyなのにJavaScriptの記法で書いてしまい、なぜ思った通…

JavaScript Ruby Pythonの配列やキーバリュー要素を展開したり多重代入したりする操作の名前と記号

こんにちは。JavaScriptとRubyとPythonが頭の中でごちゃごちゃになっているブログ主です。 JavaScriptとRubyとPythonの配列とキーバリューオブジェクトが頭の中でごちゃごちゃです。ググろうとしても、「あの、アスタリスクつける操作、なんだっけ」となり、…

Pythonでひらがなカタカナの国語辞典の見出し語順ソート

前回の記事の続きです。 yucatio.hatenablog.com 今回はひらがなに加えて、カタカナも国語辞典の見出し語順に並べます。 大辞泉の見出しの配列のページから、ひらがなとカタカナに関係ある部分をを引用します。 見出しは、五十音順に配列した。一字目が同じ…

Pythonでひらがなの国語辞典の見出し語順ソート

Pythonなどのプログラミング言語では文字列のソートは 辞書式順序 - Wikipedia でされます。 これは、1文字目をみて、違う値であれば、その順序を、同じ値であれば2文字目を比較して…ということを繰り返す方法です。 例えば、 'はっか', 'はっぱ', 'はつか',…