タグ

関連タグで絞り込む (1324)

タグの絞り込みを解除

pythonに関するkoma_gのブックマーク (3,081)

  • 【超初心者向け】Pythonのテストの書き方(pytest, unittest) - Qiita

    概要 pythonでテストコードを書くときがありますが、(筆者のように)超初心者からすると難しい用語や書き方がたくさん並んでいてハードルが高いです。 テストコードの入口となる最低限(最低限過ぎるかもしれませんが)の書き方を備忘を兼ねて書きます。 pythonでのテストコードを書く時のライブラリの種類 筆者が簡単に調べたところ、2つのライブラリがよく使われているようです。 unittest : python標準ライブラリ。インストールが必要ない。pytestと比較すると、柔軟なテストケースを書きづらい。 pytest : サードパーティ製のライブラリ。インストールの必要がある。柔軟なテストケースが書ける。pythonのテストコードを書く時のデファクトスタンダートになりつつある模様(これが当かは確認していないですが、そういう記述を見かけることが多かったです)。 筆者個人としては、以下の3つの

    【超初心者向け】Pythonのテストの書き方(pytest, unittest) - Qiita
  • Pythonでリトライ処理を簡単に追加できる「tenacity」を使ってみる | DevelopersIO

    今回はPythonで簡単にリトライ処理を追加できる「tenacity」を使ってみます。 デコレータ形式で簡単にリトライ処理を追加できるので便利です。 tenacityについて プログラムを書いていて、HTTPの通信などでリトライ処理を実装する機会は多いと思います。 今回はそんなリトライ処理を簡潔に書けるtenacityの使い方を説明します。 インストール インストールはpipで可能です。 インストール pip install tenacity 使い方 シンプルな例 シンプルな例 import random from tenacity import retry @retry def random_error(): num = random.randint(0, 10) if num > 4: print(f"Error: num={num}") raise Exception("Error!

    Pythonでリトライ処理を簡単に追加できる「tenacity」を使ってみる | DevelopersIO
  • 時雨堂を支える Python

    時雨堂では PythonPython で書かれたツールをどのように利用しているかを書き出しておきます。 何に使っているか 主力製品の Python SDK 主力製品の E2E テストに pytest 標準ライブラリのみを利用したビルドツール 主力製品のクラウド版のツール IT 自動化システム Ansible ドキュメントツール Sphinx なぜ Pyhton 使い慣れてるから pytest が当に良くできてるから 必要なライブラリが揃ってるから SpaceX がツールやテストに Python を採用していたから We are the SpaceX software team, ask us anything! Python for tools, testing and automation Rye / Ruff / uv Rust で書かれたツールを採用しています。 astral

    時雨堂を支える Python
  • Pythonで理解する電気回路 - Qiita

    メモ代わりに使っていきます。 https://www2-kawakami.ct.osakafu-u.ac.jp/lecture/ キャパシタとコイルの式 コイルの式 L’i(t)=V(t) 電流(t)をtで微分した後にLをかけるとV(t)となる import numpy as np import matplotlib.pyplot as plt # 定数定義 ω = 2*np.pi # 角周波数 L = 1 # インダクタンス # 時間の範囲を定義 t = np.linspace(0, 2*np.pi, 1000) # 入力電流 i_t = np.sin(ω*t) # 出力電圧 V_t = L * np.gradient(i_t, t) # プロット plt.figure(figsize=(10, 5)) plt.subplot(2, 1, 1) plt.plot(t, i_t, labe

    Pythonで理解する電気回路 - Qiita
  • エクセル経営からPython活用へ!ワークマンがデータ分析を高度化させるねらいとやり方とは _流通・小売業界 ニュースサイト【ダイヤモンド・チェーンストアオンライン】

    作業服チェーンの「WORKMAN(ワークマン)」やアウトドア・アスレジャーなどの機能性ウエアをも取り扱う「WORKMAN Plus(ワークマンプラス)」などを展開するワークマン(群馬県/小濱英之社長)。これまでエクセルを用いたデータ経営を推進してきたが、2021年から「AI Ready企業」を標ぼうし、プログラミング言語「Python(パイソン)」の活用により、データ分析をより高度化しようとしている。データドリブン企業として成功を収めている同社の現在地について専務取締役の土屋哲雄氏に話を聞いた。 「AI Ready企業」を掲げ社員のPython習得を推進 ──土屋専務はワークマン入社後、表計算ソフト「Excel」を用いて各従業員が販売や店舗運営に関するデータ分析・活用を行う「エクセル経営」を推進してきました。まずはその背景と意図について聞かせてください。 土屋哲雄(つちや・てつお) ●19

    エクセル経営からPython活用へ!ワークマンがデータ分析を高度化させるねらいとやり方とは _流通・小売業界 ニュースサイト【ダイヤモンド・チェーンストアオンライン】
  • Python滅ぼす協会に入会したい

    なぜ令和にもなって動的型付け言語を使うのか シフトレフトという概念が生まれたのは二十年以上も前のはずだ。 それにもかかわらず動かしてみるまで答え合わせもできない言語で開発をするという発想自体がどうかしている。 同じ動的型付けといってもJavaScriptはブラウザという事情があるし、型の表現力に優れたTypeScriptがあるからまだよい。 しかし、Pythonはどうだ。他にいくらでも選択肢があるなかで、サーバーサイドにわざわざ選定する言語ではなかろう。 貧弱な型ヒント、しかも書いたところで大した効用もない。 使っている外部ライブラリにひとつでも型ヒントがクソなものがあれば即座に破綻する。 型というガードレールもシートベルトもなしで糞を撒き散らしながらする開発にはうんざりだ。 シンタックスもキモい 動的型付けもさることながら、シンタックスもキモい。とにかく思考を妨げる語順になっている。 m

    Python滅ぼす協会に入会したい
  • GPTが人知れず既存の名刺管理アプリを抹殺していた話 - Qiita

    抹殺は言い過ぎかもしれませんが簡易な名刺管理アプリであれば自作で十分という時代がきていたようです これで紙の名刺からはきっとバイバイできるでしょう! 名刺管理アプリ作ってほしいといわれた それは2/22のお話。 ことの発端は別の部署からかかってきた一の電話でした。 新規事業の部署でいろいろな取引先様と付き合いがあるものの、紙の名刺が非常に多く管理に困っているとのことのことです。 私は小売業に勤務しているしがない一社員で、現在Eコマースの戦略立案に関する部署に所属しています。 電話先の方は、以前一緒の部署で勤務したことがある方です。現在新規事業のプロジェクト推進をしており、冒頭のような課題感を持っているため既存の名刺管理アプリ導入を考えたのですが、あまりのお値段の高さに卒倒して私に藁をもすがる思いで連絡されたようです。 これまでのアプリは名刺の識別専門のAI()を使っていた 話を聞いてみた

    GPTが人知れず既存の名刺管理アプリを抹殺していた話 - Qiita
  • 北朝鮮が操るLazarusがPythonパッケージからマルウェア配布、注意を - JPCERT/CC

    JPCERTコーディネーションセンター(JPCERT/CC: Japan Computer Emergency Response Team Coordination Center)は2月21日、「PyPIを悪用した攻撃グループLazarusのマルウェア拡散活動 - JPCERT/CC Eyes|JPCERTコーディネーションセンター公式ブログ」において、北朝鮮が関与しているとみられる脅威グループ「Lazarus Group」が不正なPythonパッケージを公式PyPIリポジトリに公開していることを発見したと報じた。 PyPIを悪用した攻撃グループLazarusのマルウェア拡散活動 - JPCERT/CC Eyes|JPCERTコーディネーションセンター公式ブログ 発見された4つの不正なPythonパッケージ 発見された不正なPythonパッケージは次の4件。 pycryptoenv pyc

    北朝鮮が操るLazarusがPythonパッケージからマルウェア配布、注意を - JPCERT/CC
  • Python 3.10~3.12の魅力:入門者も使いやすいf-string、ExceptionGroup、進化したエラーメッセージの機能を解説

    はじめに 連載の第4回となる今回は、f-string構文の機能強化、新しく導入されたExceptionGroupとTaskGroup、それと改良されたエラーメッセージを中心に紹介します。 対象読者 Pythonの最新の機能を把握したい方 Pythonの経験者で、Pythonに改めて入門したい方 プログラミング言語の最新パラダイムに関心のある方 必要な環境 記事のサンプルコードは、以下の環境で動作を確認しています。 macOS Sonoma Python(3.10.13、3.11.6、3.12.1) Visual Studio Code 1.84.2(Python v2023.23.13481009) サンプルの実行 掲載サンプルは、それぞれの.pyファイルに記述されています。動作確認は、Python 3.12、3.11、3.10をHomebrewでインストールしたmacOS上で、拡張機能

    Python 3.10~3.12の魅力:入門者も使いやすいf-string、ExceptionGroup、進化したエラーメッセージの機能を解説
  • ユーニックス総合研究所

    home archives python-janome-rhyme Janomeで韻辞典を作成【Python, 自然言語処理】 作成日: 2020-12-27更新日: 2023-12-24 カテゴリ: 自然言語処理 Janomeで韻辞典を作成 人間が話す言語を「自然言語」と言います。 その自然言語を科学的に解析するのが「自然言語処理」と呼ばれるジャンルです。 自然言語処理を行うと、日語の文章をプログラム的に解析することが出来ます。 今回は自然言語処理の工程の1つである「形態素解析」を行って、韻辞典を作ってみたいと思います。 このスクリプトはどういうものかと言うと、サンプルになる日語の文章から韻辞典を構築して、ユーザーの入力にヒットする単語を表示するというものです。 仕組み的には非常に単純で、一部サポートしていない韻もあります。 具体的には↓を見ていきたいと思います。 自然言語処理の工程

  • Python作者 Guido氏インタラクティブ記念講演会レポート | gihyo.jp

    レポートではメインコンテンツである、3つの「Guidoさんに○○」について簡単にレポートします。 GuidoさんにQ&A 「GuidoさんにQ&A」のコーナーでは、質問を参加者から事前にフォームで集め、そのうちいくつかの質問をピックアップし、その場でGuidoさんに回答してもらいました。MCはJDLAのシバタアキラさんとPyCon JP AssociationのJonasさんです。 Q&Aの様子 質問に使用したスライドは以下のページで公開しています。 GuidoさんにQ&A 全部で7つの質問をしました。質問を投稿してくれたみなさん、ありがとうございます。ここではいくつかの質問とその回答を紹介します。 「他の人に使ってもらうツール」に大切なこと 質問:「他の人に使ってもらうツール」を作る上で大切なことは何だと思いますか? Guidoさん:他の人が何を望んでいるかを知ることは難しく、まずは自

    Python作者 Guido氏インタラクティブ記念講演会レポート | gihyo.jp
  • Pythonでヘッダ付csvを読むならDictReaderがとても便利 | ABC DX Tech Blog

    PythoncsvモジュールのDictReader/DictWriterを使う 事の発端: Pythonの各種モジュール、使いこなしきれていない問題 皆さん、ChatGPT 使ってますか?どんな用途においてもとても便利ですよね。 正しいレスポンスを引き出すためのプロンプトエンジニアリングの技術が求められる新時代の到来を日々感じています。 実際、私自身もめちゃくちゃ使っています。ちょっとしたスクリプトは抽象化しながらChatGPTに投げたらなんでも教えてくれるのでかなり助かっています。まさに有能な後輩を獲得した気持ちです。(当はリアルに有能な後輩を獲得したいところですが…) だいたいは自分の想像通りのレスポンスが獲得されますが、ある日、csvで特定のカラムを置換するコードをお願いしてみたところ… という回答が得られまして、質問文が若干雑なのも気にはなりますが、ここで出てきた csv.Di

    Pythonでヘッダ付csvを読むならDictReaderがとても便利 | ABC DX Tech Blog
  • 【Python】MonkeyTypeを活用して型アノテーションを自動で追加する - yiskw note

    MonkeyTypeとは 今回は、Pythonの型アノテーションを自動で付与するMonkeyTypeを使用してみました。 MonkeyTypeは、実行時の引数や返り値の情報から、自動でスタブファイルを生成したり、型アノテーションを追加してくれるライブラリです。 ※ スタブファイルとは、型の情報を保持したファイルで、型検査時に用いられるもの。(参考: PEP 484 – Type Hints | peps.python.org) ※ 似たようなツールとして、pyannotateがありますが、こちらは長いことメンテナンスされていないようです。 MonkeyTypeは、型アノテーションを付与していない既存プロジェクトに、型アノテーションを導入する手助けになったり、 型アノテーションが付与されていないOSSのコード(深層学習の論文の実装など)を解読するのに役立つと思い、 使い方や使用感についてこち

    【Python】MonkeyTypeを活用して型アノテーションを自動で追加する - yiskw note
  • 有償RPAソフトからオープンソースのPythonに切り替えた沼田市、その狙いと効果とは

    群馬県沼田市は、市政改革大綱を定め、人口減少や逼迫する財政状況などの直面する課題へ取り組み、持続的行政サービスの提供を行うことを掲げている。 そうした中、副市長の川田正樹CIO(Chief Information Officer)をトップとしたDX推進室を令和4年度から新たに組織し、デジタルを活用した業務変革、DX(デジタルトランスフォーメーション)に取り組んでいる。具体的には、スマート自治体を推進するため、効果的な手段としてAIRPAの導入を進めている。 当初は、有償のRPAソフトを導入し効果を上げていたが、浮かんできた課題を解決するため、オープンソースのPythonRPAソフトに切り替えた。これにより、どのような効果が得られたのだろうか。 この一連の取り組みについて、沼田市総務部企画政策課 課長 星野盾氏、DX推進室長 鳥羽雄一郎氏、主査 石澤賢一郎氏、主任 原沙和氏に聞いた。 左

    有償RPAソフトからオープンソースのPythonに切り替えた沼田市、その狙いと効果とは
  • Python Distilledは幅広い人にPythonの基礎を叩き込む本 | フューチャー技術ブログ

    秋のブログ週間2023、3週目・13目です。 Python Distilledというがオライリーから出版されました。作者のDave Beazleyはかなり昔からPythonを使い込んでいる人ですので、このには信頼しかない、と思い読んでみました。Daveは大学の教授をしていて、コンピュータサイエンスで表彰もされている筋金入りです。家PyConでも何度も発表されているようです。Python歴は27年でOSSとしてはC/C++をラップして他の言語で使えるようにコードを生成するSWIGはすでに20年以上の歴史がありますし、パーサージェネレータのPLYとSLY。curioというコルーチンのライブラリなどを作っています。僕は以前、SWIGのドキュメント翻訳をしてCマガジンに特集記事を書かせていただいたこともあり、僕の大学時代の顔写真がSWIGのウェブサイトに公開されていたりします。 そういう世

    Python Distilledは幅広い人にPythonの基礎を叩き込む本 | フューチャー技術ブログ
  • 新卒向け「テストコード」の研修資料 Sansanが無料公開 Python上でのテスト方法を解説

    Sansanは10月25日、テストコードについての研修資料を無料公開した。4月に実施した新卒の技術研修で使った資料の一部で、入社2年目の社員が作成。Pythonのテストフレームワーク「pytest」でのテストコードの書き方や、VSCodeでのテスト方法などを解説している。 同社はテストコードの便利な点として「実行確認しやすい」「リファクタリングや修正後に実行結果や振る舞いが変わっていないことを確認できる」「コードの挙動が理解しやすい」を挙げる。テストコードの重要性を理解し、テストコードを活用できるようになることを目的に研修を行ったとしている。 関連記事 新卒向け「統計学の基礎」100ページ超 SaaS企業が無料で資料公開 ブレインパッドが、新卒研修で使った統計学の学習資料を公開した。統計学の基礎を解説したもので、ページ数は100ページ超。スライド公開サービス「Speakerdeck」から無

    新卒向け「テストコード」の研修資料 Sansanが無料公開 Python上でのテスト方法を解説
  • 並列処理がとても苦手なPythonはプロセスを分けよう コードを書く時に意識したい2つのTipsと2つの落とし穴

    GoPythonKotlinRustTypeScript の5つの言語について「並列処理、並行処理の手法」というテーマに絞り解説する「並列処理をGo/Rust/Kotlin/Python/JSで解説!思想の違いを体感しよう」。Python編では橘氏が登壇。Pythonで並列処理を行う際の設計方針と、実装上の癖について話します。 西川氏の自己紹介 西川大亮氏(以下、西川):ここからはPython編の「ちょっとしたデータ分析の並列化」というタイトルで、西川から話します。 GOに勤める西川です。今やっているのは、タクシーやハイヤーの営業支援。「お客さんを乗っけていない時間、どこを走ったらいいの?」とか「どういうところで待っていたら注文来やすいの?」というところのナビをする、「お客様探索ナビ」というサービスのいろいろなことをしています。小さなサービスなのでいろいろやっている感じですね。 P

    並列処理がとても苦手なPythonはプロセスを分けよう コードを書く時に意識したい2つのTipsと2つの落とし穴
  • 主にVSCodeではじめるPython開発環境構築ガイド | DevelopersIO

    ファイル比較 VSCodeのエクスプローラで、ファイル2つを選択して右クリックメニューから「選択項目を比較」で比較することができます。 また右クリックで、「比較対象の選択」をした後に「選択項目を比較」でも比較することも可能です。 VSCodeのSnippetの使い方 VSCodeのSnippetも便利です。似たような構造のクラスを実装する場合などや、プロジェクト共通で使いがちな書き方というものをSnippetに登録して、効率化することができます。 また、変数を持たせておくこともできます。この場合、Snippetを呼び出した後に変数部分にカーソルがあたるので、そこで変数部分をタイピングできます。 詳細は以下のリンクをご覧ください。 Visual Studio Codeに定型文(スニペット)を登録する方法 VSCodeのUser Snippetを活用しよう! また後述するSnippet Gen

    主にVSCodeではじめるPython開発環境構築ガイド | DevelopersIO
  • Pythonでデバイスを制御しよう 第2回:プッシュボタンを扱う(2) 誤動作の原因となるチャタリングを防止する | Device Plus - デバプラ

    プッシュボタンを扱う(1) Pythonでプッシュボタンを扱うには 「プッシュボタンを扱う」のパート2では、タクトスイッチなどのボタンを扱う際に誤動作の原因となり得るチャタリングについて解説します。 ラズパイなどのマイコンボードに人間の意思を伝えるためにプッシュボタンは欠かせません。プッシュボタンは、指で押せばラズパイに信号を伝えられるシンプルな部品であり、今さら説明の必要もないでしょう。ところがこのボタン、プログラムから見れば厄介な存在で、注意しなければ誤動作の原因となってしまいます。 この原因の一つが「チャタリング」と呼ばれる現象です。安定した動作が求められる電子機器ではチャタリング対策は必須です。 今回は「チャタリングとは何か?」と基的なことから、ソフトウェアで行える対策について解説します 記事ではプッシュボタンにタクトスイッチを使用します。タクトスイッチは小型で入手性も良く、基

    Pythonでデバイスを制御しよう 第2回:プッシュボタンを扱う(2) 誤動作の原因となるチャタリングを防止する | Device Plus - デバプラ
  • GitHub - mckinsey/vizro: Vizro is a toolkit for creating modular data visualization applications.

    Rapidly self-serve the assembly of customized dashboards in minutes - without the need for advanced coding or design experience - to create flexible and scalable, Python enabled data visualization applications Use a few lines of simple configuration to create complex dashboards, which are automatically assembled utilizing libraries such as Plotly and Dash, with inbuilt coding and design best pract

    GitHub - mckinsey/vizro: Vizro is a toolkit for creating modular data visualization applications.