2019.02.13Pythonを勉強していて、コンテナの一つであるsetが便利すぎて感動したので特徴や使い方などまとめてみようと思います。集合の演算まとめPythonのSet(集合)とは?Set(集合)はリストと似た構造をしていますが、中身に同じ要素の重複を許しません。数学的な意味での集合と同じように考えていいですね。ちなみにsetは要素の追加も可能ですが、重複する要素を追加した時は自動的にその要素が削除されます。これって実用的なアプリケーションを作る上で結構使える仕様な気がします。実際、私もSwiftでアプリ開発したときに重複する要素の削除機能が欲しかったことがあるんですが、その時はNSSetを利用して重複の削除を行いました。順序に関する情報がないだけあって、要素の探索は高速です。リテラルは{a,b}のように波括弧を使って表現します。itemを追加します。イテラブル(iterable)な要素を全て追加します。何れかの要素を削除します。itemを削除します。itemを削除します。(itemが存在しなくてもエラーにならない)listと違ってsetには順序がないので、popはどの要素を削除するのか指定できません。考えても要素の削除にはdiscard一択な気がしますが...Set(集合)の集合メソッドこれがめっちゃ便利です。数学の集合論を少しでも分かっているなら、かなり直感的に集合を扱うことができます。共通要素の判定isdisjoint(other)otherと共通する要素がなければTrueです。部分集合の判定issubset(other)otherの部分集合であればTrueを返します。otherが部分集合であればTrueを返します。これどっちがどっちかわからなくならないように注意しましょう。superset(・・・上位集合)なので、引数が対象に対する上位集合であるかどうかを判定します。集合のコピーcopy()その集合のコピーを返します。集合の演算difference(other)otherの要素を削除した集合(差集合)を返します。intersection(other)otherと共通の集合(積集合)を返します。symmetric_difference(other)片方にしか含まれない要素の集合(対称差)を返します。union(other)otherの要素を追加した集合(和集合)を返します。これらは非常に便利なメソッドですね。積集合なんか共通のナニカを見つけるというサービスを開発するときにめちゃくちゃ役に立ちそう。まとめPythonのSetには非常に便利なメソッドが多く仕込まれていますね〜。したらSwiftにもあるのかな?改めて文法を学ぶ重要性に気づかされました。そのクラスから生成されたインスタンス自身を指すものです。javaとかならthis,swiftだとまんまself...Angular【Angular】Angularでcsvファイルの作成・ダウンロードAngularってかJavaScriptで表形式のデータからcsvファイルを作成し、ダウンロードするやり方です。htmlファイルにDL用のaタグ要素を作ります。oncli...JavaScriptJavaScriptの非同期処理をできる限り正確に理解するプログラミング初心者が詰まりやすいポイントとして、非同期処理はよくあげられるかと思います。実際初心者にとっては概念自体もわかりにくいし、なぜか記事によって言い回しやら説明の仕方やらが違うので調べれば調べるほど混乱してきて、心が折れそうになり...Programmingswagger-mergerを使ってswaggerファイルを分割管理しようAPIの管理にswagger(現openapi3.0)を使用している組織は多いかと思います。そこでよく出てくる問題として、swagger(openapi)ファイルを長い間運用し続けていると、pathsやcomponentsが無制限に...Programming【Python】ファイルの読み込み方まとめた【read,readline,readlines】Pythonにはtxtファイルの読み込み方が3種類あります。違いがよくわからず頭がこんがらがってきたので、一旦みやすくまとめてみます。hookを仕込みpre-push時に強制的にmigrationを行うようにしてみました。コメントをキャンセルメールアドレスが公開されることはありません。*サイト上に表示された文字を入力してください。【Swift】frameとboundsの違いは?UIViewにどう影響するのか【Swift】オプショナル型とは?4種類のアンラップ方法と共に解説!【Angular】html文書をエスケープしないでそのままtemplateに表示するアーカイブ2019年9月2019年5月2019年4月2019年3月2019年2月カテゴリーAngularAWSCSSDockerExcelJavaScriptMySQLPHPProgrammingPythonSwiftタイトルとURLをコピーしました。