Python3関連のことを調べてみた

Python3関連のことを調べてみた

クラスのメンバの更新

https://paiza.jp/works/mondai/class_primer/class_primer__change_member

コメントで頂いたコードを元に作成。
メンバの更新するときに、いろんなWebページでよくあるコードをみると
変数の名前がgetするときもchangeするときも、同じ変数を使っている事が多いんだけど
私としてはよく分かりづらいので、new_をつけてみた。これでわかりやすいはず。
phpのときもこれどの値が入るのかがわかりづらかった。

“`py
class Employee():
def __init__(self,number,name):
self.number = int(number)
self.name = name

def getnum(self):
return self.number

def getname(self):
return self.name

def change_num(se

元記事を表示

Pythonでの閏年判断

閏年で不幸になる人を少しでも減らすためのメモ

# 閏年の特徴

↓とてもわかりやすいサイト↓
https://www.casio.com/jp/watches/contents/leap-year/

– 閏年は、西暦年が4で割り切れる年
– ただし、100で割り切れる年は閏年ではない
– しかし、400で割り切れる年は閏年になる
このルールにより、閏年は一般的に4年に1度発生するが、上記の例外によって調整される

検索条件で1年前以降とかを指定する時に何も考えずにyear – 1とかしちゃうと閏年の日にエラーになる(戒め)

# 指定した年が閏年かどうかを判断

Pythonでは、calendar モジュールの isleap(year) 関数を使用して、指定した年が閏年かどうかを判断できる

“`python
is_leap = calendar.isleap(2024)
print(is_leap) # 出力: True
“`

# 指定した範囲内の閏年の数を計算

calendar モジュールの leapdays(y1, y2) 関数は、指定した範囲内の閏年の数を返す

元記事を表示

コーディング面接対策で有名なサイト「LeetCode」で問題を解いてみた

[Supership](https://supership.jp/)の名畑です。待ちに待ち続けた[うる星やつらの「扉を開けて 前編」](https://www.youtube.com/watch?v=yKhj-JPn9Ek)、本当に良かったです。[OVA版](https://filmarks.com/movies/45059)からもう35年以上経っているんですね。当時繰り返し見たなという懐かしい記憶。後編も楽しみすぎる。そして、きっと、原作34巻、つまりは[完結編](https://filmarks.com/movies/26956)の令和版も今後ありますよね?

## はじめに

会社によってはプログラミング職での採用試験の際にコーディングテストを応募者に課すところがあります。
要は経歴や口頭試問だけでは能力を測らず、実際にコードを書いてもらうというものです。

ホワイトボードで書いてもらうような形式もあれば、試験問題を提供するWebサービスに挑戦してもらう場合もあるでしょう。

そんなコーディング面接対策で有名なサイトとして[LeetCode](https://leetcode.c

元記事を表示

DockerとFastAPIでHello Worldした

## 実行環境
– Visual Studio Code: 1.87.0
– OS: MacOS Sonoma 14.2.1

> 学習者が記録用に書いた記事です。
> ご指摘、追加情報などあれば些細なことでもコメントからいただけると励みになります。

## ファイルの構成

“`shell
$ tree .
.
├── app
│ └── main.py
├── Dockerfile
├── docker-compose.yml
└── requirements.txt
“`

## Dockerfile

“`Dockerfile
FROM python:3.11-slim-bullseye
EXPOSE 8000
WORKDIR /app
RUN apt update -y && apt-get update -y
RUN pip install –upgrade pip
COPY requirements.txt requirements.txt
RUN pip install -r requirements.txt
COPY app .
CMD [“uvicorn

元記事を表示

Pythonメモ

# 概要

Pythonでなにかしらを書いているときに、よく調べたりしていたちょっとした処理をまとめます。

# ファイル処理

ファイルの読み込み、書き込みについてまとめます。

## ファイル書き込み

“`python
# ファイルに書き込む文字列
s = ‘test string’
# ファイル名
path = ‘test_write.txt’

# ファイルに書き込む処理
with open(path, mode=’w’) as f:
f.write(s)
“`

## ファイル読み込み

“`python
# ファイル名
path = ‘test_write.txt’

# ファイルから読み込む処理
with open(path) as f:
s_read = f.read()

# 読み込んだ内容を表示
print(s_read)
“`

元記事を表示

venv(仮想環境)コマンド自分まとめ

pythonのプロジェクトごとに環境を管理するvenvのコマンドをまとめた。
## コマンド
venv(仮想環境)ディレクトリの作成.

[ターミナル]
python3 -m venv [name]

仮想環境に入る.

[ターミナル]
source [name]/bin/activate

仮想環境から出る(仮想環境の無効化)

[ターミナル]
deactivate

venv(仮想環境)内にインストールされているライブラリ一覧をテキストファイルに出力する.

[ターミナル(仮想環境内)]
pip freeze > [name(requirements.txt)]

出力したテキストファイルを元にライブラリを一括インストールする.

[ターミナル(仮想環境内)]
pip install -r [name(requiirements.txt)]

元記事を表示

seleniumでchromeブラウザを操作してウェブサイトを開く

# 概要

seleniumを使い、ウェブブラウザを操作できるところまでまとめます。

# seleniumのインストール

“`
pip install selenium
“`

# selenium webdriverのダウンロード

https://chromedriver.chromium.org/downloads

上記からダウンロードを行いました。操作するchromeブラウザのバージョンをURL欄にchrome://versionを入力して調べてからそれに対応するものをという記事をネットで読みましたが、あまり気にせず似たようなバージョンのものをダウンロードしてきました。

# 動作例

## サンプル1

はじめのサンプルとしてgoogle.comのページを開くものを作りました。

### コード

コードは下記のものを使いました。このコードはgoogle.comをchromeブラウザで開くという動作を想定しています。開いてすぐ閉じてしまうことを防ぐために3秒まつ処理を最後にいれています。

“`python
import time
from selenium im

元記事を表示

インストールをなるべく行わないでpython環境構築

# 概要

Windows 11にPythonの実行環境と開発環境を構築することを目的としています。インストーラーを使った作業をなるべく行わないようにしています。

# Python3

## 本体ダウンロード

https://www.python.org/downloads/windows/

上記のリンクより、Windows embeddable packageをダウンロードしました。私の場合は、環境が64-bitなのでそれをダウンロードし、解凍しました。

## 実行

解凍したフォルダの中に、python.exeがあるので、それをpowershellで実行しました。パスを考慮したうえでしたのようなコマンドを打って、動作確認しました。バージョンの数字が表示されると思います。

“`
python.exe -V
“`

## pipのダウンロードインストール

https://bootstrap.pypa.io/

上記のリンクよりget_pip.pyをダウンロードしました。右クリック->リンク先をファイルに保存。

パスを考慮して、下記コマンドを実行しました。

“`
p

元記事を表示

Python開発環境構築時のメモ(Windows 11 + Python3 + VSCode)

# はじめに
SpeakerDeckで公開されている[競技プログラミングことはじめ](https://speakerdeck.com/e869120/20221122-jing-ji-puroguramingukotohazime)を見て、[AtCoder](https://atcoder.jp/?lang=ja)を始めるためにPython開発環境を整えたので、そのときのメモ。

>インストール作業日:2024/3/2
導入環境(OS):Windows 11 Home(23H2)
導入したPythonのバージョン:Python 3.12.2

# インストール手順
基本的に[Python.jp](https://www.python.jp/index.html)さんの[Visual Studio Code でPython入門 【Windows編】](https://www.python.jp/python_vscode/windows/index.html)の通りに作業を実施。

実際には、手順の「1.Windowsエクスプローラの設定」はもともと設定済、「2.不要なPythonを整理

元記事を表示

YOLOv8モデルを使って物体検出アプリケーションをFLASKで作成してみた

# [Python]初心者がYOLOv8モデルを使って物体検出/セグメンテーション/画像分類アプリケーションをFLASKで作成してみた

## はじめに
こんにちは。リスキリングを目的にプログラミングを学びなおしている元プログラマー(現なんちゃってプロジェクトマネージャー)の @Nuts12 です。
現在私はIT企業に勤めながら、**Aidemy** というプログラミングスクールで夜な夜なPythonと機械学習に取り組んでいます。 本投稿はAidemy Premiumのカリキュラムの一環で、受講修了条件を満たすために公開しているブログ記事の第二弾となります。 今回は色々と試行錯誤を繰り返しながら学習を進めることとなりました。失敗談を含んだ奮闘記となっておりますので、これから物体検出にチャレンジされる皆さんの少しでもご参考になれば幸いです。

## 開発環境について
以下、今回の開発環境になります。
Operating System: Windows 11 Home 64-bit
System Model: Surface Pro 6
Processor: Intel(R)

元記事を表示

画像認識AIを使わずにデジタル数字認識(小説風)

:::note info
この記事はChatGPTを使って作成されています。温かい目で見ていただけますと幸いです。
:::

# プロローグ
ある日、科学者たちが集まって、画像から数字を読み取る新しい方法を発明しようとしていました。彼らはAIに頼らず、脳筋アルゴリズムでこの難題に挑むことを決意しました。果たして、彼らの試みは成功するのでしょうか?

# 科学者たちの集い
ある日、科学者たちが大切な会議のために集まりました。彼らの目的は、画像から数字を読み取る新しい方法を発明することでした。会議室には、様々な分野の専門家が集結し、情熱と興奮が空気を支配していました。

![mensetsu_group_discussion.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3468749/fddaa18d-1530-4c06-d436-7cf42e6ee18e.png)

科学者1: 「AIを使わずに、画像から数字を読み取る方法って、可能なのかな?」

科学者2: 「もちろん可能さ!AIに頼らなくても、私たち

元記事を表示

【Python】スクレイピングして企業概要を取得する①

# はじめに
スクレイピングを利用して会社概要ページから必要なデータを取得するツールを実装したので紹介いたします。

## 目的
企業概要ページから、とりだいデータ(今回の場合は、会社名、本社所在地、代表名、電話番号、FAX番号、企業HPのトップページのURL、問い合わせ先メールアドレス)を取得します。

## 対象企業
3年半前にHPを作成した企業さんの会社概要を使います。(現在は当時とHP構造が大きく変わったため)

## ソースコード
“`python3
# 企業概要取得ツール
# 新規開発 2024/3/2
# Create by 乃木坂好きのITエンジニア

#ライブラリのインポート
from bs4 import BeautifulSoup
import urllib3
import codecs
import datetime
import re
import os
import requests

#会社概要ページのURLの定義
get_url = “https://flora-inc.co.jp/page/company.php”
# 現在日時の取得
dt =

元記事を表示

Python入門編[その1]

# はじめに
どうもこんにちは.Qiita初記事です.
今回はプログラミング初心者,Python初心者を対象とし,演算子と基礎的な文法が扱えるようになることを目標とします.
また,シリーズを通して最終的にはpythonで大体のことができる(超大雑把)ようになることを目標としています.写経するもよしコピペして動作確認するもよしといった記事にするつもりです.

:::note
なお,私の環境はPython 3.10.10となっていますので,もしこれ以降に示すスクリプトが動かない場合はバージョンを確認してみてください.
ちなみにバージョンを確認するコマンドは以下の通り.
“`
python3 -V
“`
:::

# 基本構文と演算子,文法
## 演算子について
以下の表に基本的な演算子を示します.

| 演算子 | 意味 |
|:———–|————:|
| + |和 |
| – | 差 |
| * | 積 |
| \/ | 商 |
| %

元記事を表示

dockerのイメージの種類と選び方

## Dockerコンテナイメージのバリエーション
### dockerのイメージの種類がたくさんあってどれを選べばいいかわからない
### イメージの種類は大きく分けて4つ
### 1. 公式
### 2. Alpine Linux
### 3. Debian
### 4. windows

## 結論
開発環境や手軽に試したい場合はAlpine Linuxがおすすめ
しっかりした環境を必要な場合は公式イメージがおすすめ

## 具体的なDocker Hubのpython3.10のイメージを解説
### Debian Bookworm バリエーション
– **3.10.13-bookworm, 3.10-bookworm:**
– ベースイメージ: Debian Bookworm
– 特徴: Debianの最新バージョンを含む
– 用途: 最新のパッケージと機能が必要な場合

### Debian Slim バリエーション
– **3.10.13-slim-bookworm, 3.10-slim-bookworm, 3.10.13-slim, 3.10-slim:**

元記事を表示

クラスの作成

https://paiza.jp/works/mondai/class_primer/class_primer__make_class

未だにクラスに慣れていないのでなかなか戸惑います
0からはじまるので-1しないと中身が出てこないとか忘れてました。。。

“`py
class Employee():
def __init__(self,number,name):
self.number = int(number)
self.name = name

def getnum(self):
return self.number

def getname(self):
return self.name

N = int(input())
A = []
employees = []
for _ in range(N):
A =input().split()
if A[0] == “make”:
employee = Employee(A[

元記事を表示

データフレームを得て VIF を計算する関数

ChatGPT 3.5 に「VIF を計算する関数を書いて」とお願いすると,すぐに書いてくれるけど,for を使ったり,statsmodels 使ったりして,冗長だなあ。結果だって,別にデータフレームで返してくれなくてよい。

“`python
import pandas as pd
import numpy as np
from statsmodels.stats.outliers_influence import variance_inflation_factor
from statsmodels.tools.tools import add_constant

def calculate_vif(data):
data_with_const = add_constant(data)
vif_values = np.zeros(data_with_const.shape[1])
for i in range(data_with_const.shape[1]):
vif_values[i] = variance_inflation_fact

元記事を表示

【Python/Flask】SNSアプリのAPI開発を通してTDDとアーキテクチャを勉強する日記①

# はじめに
アーキテクチャや開発手法についてこれまでいくつかの教材に従った簡単なチュートリアルしかした事がないので、今回はある程度オリジナルのアプリを開発しながら実践したいと思います。

## 今回の内容
– [x] 以前勉強した内容を整理する
– [x] 開発環境を作成しflaskを起動する
– [x] ORMとDBをセットアップする
– [x] シンプルなpytestのサンプルを作成する
– [x] 勉強開始を宣言する

作成したソースはGithubで公開しています。

https://github.com/naitoyuma7110/flaskSNSApp

## 勉強になった教材
自分の理解レベルはまだこの程度という参考として、これまでアプリケーションアーキテクチャとテスト駆動についてこれまで実践して大変勉強になった教材を紹介させて頂きます。
 

**リバーシで学ぶアプリケーション設計入門〜仕様の整理からTypeScriptでの実装まで〜**

アプリ内容:オセロ
言語:Typescript
フレームワーク:Express(Node.js)
学習内容:各種アーキテク

元記事を表示

構造体の更新

https://paiza.jp/works/mondai/class_primer/class_primer__change

前回の記事のコメントで教えていただいた方法を参考に。
配列の特定のインデックスのその中の構造体の要素の更新方法が
わからず、色々調べつつ。
勉強になりました。。。

“`py
class Member():
def __init__(self, name, old, birth, state):
self.name = name
self.old = int(old)
self.birth = birth
self.state = state

def __str__(self):
“””表示文字列に変換する”””
return f”{self.name} {self.old} {self.birth} {self.state}”

N,K= map(int,input().split())
members = [Member(*input()

元記事を表示

Python 文法まとめ

### 目次

Open In Colab

1. **[プログラミング入門](#1-プログラミング入門)**
– [1.1 プログラミングとは](#11-プログラミングとは)
– [1.2 Pythonとは](#12-pythonとは)
– [WEBアプリケーション開発](#webアプリケーション開発)
– [データ分析](#データ分析)
– [機械学習・AI](#機械学習・ai)
– [ゲーム(GUI)アプリ開発](#ゲームguiアプリ開発)
– [スクレイピング](#スクレイピング)
– [1.

元記事を表示

python CGI の掲示板もどき。

# 掲示板に使えそうなの出来ました。

時間確認は4年に1度のイベントとなります。
ご参加頂ければ、有難くおもいます。
簡単な、キャプチャーに続ぎ、scriptの紹介を致します。
最後まで、お楽しみ頂ければ、幸せにおもいます。

### 構成
・エラー処理
・時間
・受信
・デコードとハッシュ代入
・URL変換
・ファイル書き込み
・html書き出し
・Fileからの書き出し

大体そのようになっています。

では、キャプチャー

![スクリーンショット 2024-02-29 025555.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3625232/b6afd1ec-ff9a-eb85-a97a-7b126a81f5fb.png)
![スクリーンショット 2024-02-29 025637.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3625232/b256ef88-1a00-aa33-397c-194d6c7b6e

元記事を表示

OTHERカテゴリの最新記事