ブログ記事4,918件
LinuxPCからADB経由でスマホのスクショを撮るプログラム以前は「adb-s192.168.10.118:5555exec-outscreencap-p>screen.png」こんな感じでコマンドを使っていましたがデバイス指定が面倒だし、GUIで気軽に出来るようにプログラムしました。(今回はClaudeに依頼)ブログをお訪ねくださり、ありがとうございます。以前から使っている自作のスマホ内臓の画像をPCへ移動させるプログラムに追加しようとしたんで
社員情報を削除できるようにしましたが、容易に削除できてしまうはあまりよろしくありません社員情報を削除するのは退職などで社員が社内にいなくなった時ですよね社員が会社から去った後でも、社員情報は残しておくべきだと思います(問い合わせがあった場合に対応できるようにするなどの考慮が必要です)社員情報テーブルに退職フィールドを設けて、退職時に更新するようにしてください社員情報リストにも省略可能な"retire"を設けて「false=現職」「ture=退職」とします省略された場合は「現職」
・コンストラクタ(__init__)・mainメソッドのテーブルをプロパティに移動しましたモード判定でも利用できるためです※極力ですが、同じ情報は1つだけにするように心がけると良いでしょう変更や修正が必要な場合に1か所だけ修正すれば良いことになりますよねメンテナンス性(「保守性」)が向上します主制御(main)メソッド・テーブルをコンストラクタに移動させたことにより、プロパティのモード処理を使用するように変更しました実質的な変更はありません※機能を追加し
Employeeクラスのmainメソッドの処理をもう少しスリムにしてみたいと思います社員情報モード、カテゴリ情報モード、社員入力モードは似たような処理なので、まとめられそうです社員入力モードの社員情報追加処理をメソッドに切り出します・切り出したメソッドではメッセージを返すようにし、メソッドの呼び出し元で標準出力するようにしてみました※カバレッジ測定して問題ないことは確認しています社員情報モード、カテゴリ情報モード、社員入力モードは同様な処理になりました標準入力(in
ブログで使いやすいように作った自作のお気に入り画像管理ソフトに登録しましたこれで通常の絵文字や「みんなの絵文字」と同様に使えます。(この画像はCopilotで作成しています)ブログをお訪ねくださり、ありがとうございます。アメブロのお気に入り画像管理プログラムに昨日作った自分のキャラクタ画像を登録しましたこれで「みんなの絵文字」のように使えます無事に20種類の登録を終えた後の一覧です。次の段階はブログの冒頭に使っているようなGIFアニメ化ですねぇ先日利用したGI
今回は意外と楽だったかもしれません…・最後のelseはゴミでしたので削除しておきました(Pythonはこのようなコードも許されてしまいますので注意が必要ですね…)【employee.py:main】【test_employee.py】
少々長めの小説でしたが、いかがでしたでしょうか?次作は、まだできあがっていないので当分、後になるかな?最近、会社で好きなことをさせてもらっている20代、30代頃にやっていたプログラミングをやって社内の自動化推進を始めた私の全盛期ではCOBOLやPI/Iだったが、いまや、Pythonだといっても、一から勉強しているわけではない当然、AIにコーディングさせているのだバッチジョブも久しぶりにつくったおかげで、2
ごきげんよう(*ᴗ͈ˬᴗ͈)”エアコンの効いたお部屋でほ~っとひと息(๑´ㅂ`๑)な若葉です♡こちらは今日34℃まで上がるんだとか。そして晴れるのは明日までで、明日の夕方からはしばらく雨の季節に入りそうです。気持ちいい時期ってほんと短いよね~(⑉・̆-・̆⑉)若葉は夏の始まりに体調を崩しやすいので、気をつけなきゃです✩.*˚さてさて。前回のブログから1ヶ月以上も放置してしまい、申し訳ありませんでした(>_<)若葉は元気です!いちおー、、、
今までのプログラムでは一旦モードに入ってしまうと、プログラムを終了して、再度実行し直さなければ、他のモードに入れませんでしたこれでは使い勝手がよろしくありませんので、「b」を入力すると現在のモードを終了して、再度モードを入力できるようにしてください※社員情報入力モードの時は社員情報の追加が完了しても、モードを抜けないようにしておきましょう
単体テストプログラムですログファイルの確認を怠っていることに気付きましたが、まだ改善したい箇所があるので、カバレッジ測定だけ100%にしておいて先に進むことにします※「カバレッジ測定」はプログラムの通った箇所の割合(網羅率)を測定するものでプログラムが正しいことの確認にはならないことを、改めて思い知らされます最終的な確認は「人」が行わなければいけないということですよね…今回はドラスティック(劇的)に変更してしまったので、差分ファイルはなしですモードを1つ増やして、社員リ
コンストラクタ(__init__)・モードリストに「"ins"」を追加しました主制御(main)・データベース存在確認して、存在しない場合は(作成されるので)、テーブルを作成する処理を初期化処理から移動しました(初期化関数は削除したので、社員情報ファイルからの情報追加も削除されます)・モード入力待ちの表示メッセージを修正しました・社員情報入力モードに入る前に社員情報がデータベースに存在するかを確認し、社員情報がある場合はメッセージを出力します(モード入力待ち状態は継
(かなり苦戦しましたが)解答例です※途中で単体テストを置き去りにしたのが問題ですし、テスト報告書も後回しにしたことのツケがまわってきました(それでも、テスト結果報告書はもう少し後回しにさせてくださいね)【employee.py】########################################################################社員情報#
8分で理解するPython基礎講座【Python入門】
今回の環境OSWindows1164bit使用したソフトエディタVisualStudioCode(VSCode64bit版)PyCharmより軽く、初心者にも扱いやすいです。最重要ポイントPanRollingCOMが32bitここが最大のハマりポイントでした。PanRollingのCOM(ActiveX)は古い仕組みで作られており、32bitCOMです。つまり:Pythonも32bit版が必要でした。インストールしたPyt
引き続き線形探索を続けましょう。3-6長方形に含まれる点整数nと、二次元平面上の点1~nの座標(x_1,y_1),...,(x_n,y_n),整数x_s,x_t,y_s,y_tが与えられます。n個の点のうち、(x_s,y_s),(x_s,y_t),(x_t,y_t),(x_t,y_s)の4頂点からなる長方形の内部に含まれている点の数を求めてください。
ここ10年、ソフトウェア業界の“暗黙のルール”はとてもシンプルでした。「先にリリースした者が勝つ」。新規プロジェクトで言語選定をする時、多くの企業はPythonかTypeScriptを選んできました。理由は単純です。エコシステムが巨大で、人材を集めやすく、コンポーネントを組み合わせれば、金曜には上司にデモを見せられる。一方で、RustやGo、C++は性能面ではPythonを10倍、100倍上回ることもあります。しかし代償は重い。学習コストは高く、エンジニア採用も難
今日は最大値、最小値の問題を解いてみましょう。3-3条件付き最小値整数nと、数列a_1,...,a_nと、整数kが与えられます。数列に含まれる値で、k以上であるもののうち、値が最小のものを出力してください。なお、k以上である値が必ず数列に含まれていることが保証されています。入力例5-5113-90-4
当然のことながら、社員情報は会社によって異なります複数の会社で利用できるようにするため、提供時には空の社員データベースを作成するだけにしようと思いますそして、モードを1つ増やして、社員リストを社員データベースに追加できるようにしておきましょうモードemp:社員情報取得(既存)cat:カテゴリ情報取得(既存)ins:社員情報追加(新規)insモードに入ったときは「社員リストファイル名:」を表示し、社員リストファイルの入力を促しましょう正しいファ
関数の前に@patchと記述してありますユニットテストはモック(mock:模擬)機能があり、その1つにpatchデコレータがありますpythonでのデコレータの記述はメソッドの前に「@」を記述します下記では@patch(…)と記述してありますねこのように記述するとpatch機能でメソッド(下記はtest_01_emplist_not_found)を実行してくれるのですただ実行するだけではなくて、引数で指定した内容を読み取って、patch機能が該当する処理を「模擬(つまり代行)
結構大変でしたが、ようやくできました(社員クラスにも若干の修正は入れました)【test_employee.py】########################################################################社員情報テスト#Copyrint2026Precede.##############################
Pythonの勉強を続けています🐍今回は👉DB(データベース)について学びました。ここまで👇✔CSV✔pandas✔データ分析をやってきましたが、実務ではさらに👇👉DBでデータ管理することが多いです。■DBとは?👉データを保存・管理する仕組み例えば👇✔ユーザー情報✔売上データ✔商品データ全部DBで管理されます。■CSVとの違いCSV👇👉ファイル保存DB👇👉検索・追加・更新が強い■PythonでSQLiteを使う
いつの間にかmain関数でやらなければならないことが多くなってきました依頼者からも「もう少し何とかならないの?」と指摘され、議論を重ねた結果、社員クラスmain関数相当のものを作成して、main関数ではそれを呼び出すだけにすることになりました※場合にもよりますが、main関数の実装はなるべくシンプルにするのがよいです【main.py】・(当然ですけど)シンプルになりますよね…#################################################
【employee.py】・社員情報取得(get_employee)メソッド特に大きな変更はありませんが、最初にエラーメッセージプロパティが設定されていた場合の処理を削除しています__get_employee_list、__get_employee、__edit_employeeメソッドは前回から変更してないので説明は割愛させていただきますdefget_employee(self,emp_no:str=None):'''社員情報を
【employee.py】・コンストラクタ(__init__)プロパティの初期化のみを行うようにしています関数の戻り値に表示メッセージを返すようにしたので__err_msgは削除しました(initメソッド追加によりエラーメッセージを保持する必要がなくなりました)def__init__(self):'''コンストラクタArgs:self:自分自身Ret
【main.py】社員情報クラスで追加された初期化(init)メソッドを呼ぶようにしましたinitメソッドでは、前回まで社員情報クラスの初期化(__init__)で処理していたデータベースの作成を行うようにします前回までは、データベース作成ができなかった場合に、メッセージを表示しますがそのタイミングが社員情報取得(get_employee)メソッドまたはカテゴリ情報取得(get_category)メソッドを呼び出すときでしたので、モードを入力して、社員情報を入力するまではメッセ
課題7には不具合があったので、その修正も行いました追って解説していきます【main.py】########################################################################主制御#Copyrint2026Precede.#############################################
Pythonの勉強を続けています🐍今回は👉グラフ表示して保存する方法について学びました。データ分析をしていると👇❌数字だけだとわかりづらいでも👇👉グラフにすると一瞬で見やすくなります🔥■今回使うライブラリ👉matplotlibデータ分析では超有名です。■インストールpipinstallmatplotlib■グラフ表示してみるimportmatplotlib.pyplotaspltx=["月","火",
JSON形式社員情報リストファイルを利用していますが、単体テストで用意されている社員情報リストファイルでは不十分です以下の型式に対応しなければなりません(1)JSONの記述型式が誤っているファイル(2)空のJSONファイル(3)detaの中身が空のファイル(4)社員番号キーがないファイル(5)氏名キーがないファイル(6)生年月日キーがないファイル(7)性別キーがないファイル(3)の場合は「空のデータベースを作成する」ことにしますそれ以外の場合は「情報を
単体テスト処理も変更しました(開発途上だとリグレッションテストにはならないですね…)単体テストは公開メソッドに着目すれば良いです・モード判定メソッド(is_md_valid)test_01_is_md_valid・カテゴリ取得メソッド(get_category)test_02_get_category_emlist_not_existtest_03_get_category・社員情報取得メソッド(get_employee)test_04_get_employee_e