参考リンク:pip install sklearn してはいけません。代わりに pip install scikit-learn しましょう
2025年11月4日火曜日
2025年5月27日火曜日
webカメラを起動し、写真を撮影するPythonプログラム
参考Youtube:webカメラを起動し、写真撮影するPythonプログラム
2025年1月10日金曜日
Python:画像ファイルをcsvファイルの情報に基づいて、現在のディレクトリのフォルダに移動させるプログラム
import os
import shutil
import csv
def move_images_to_folders(csv_file):
"""
画像ファイルを、CSVファイルの情報に基づいて現在のディレクトリのフォルダに移動する関数
Args:
csv_file (str): CSVファイルのパス
"""
# CSVファイルを読み込む
with open(csv_file, 'r') as f:
reader = csv.reader(f)
file_info = {row[0]: row[1] for row in reader}
# 画像ファイルを移動 (最大100回試行)
max_retry = 100
for i in range(0001, 2001):
for _ in range(max_retry):
filename = f"{i:04d}b.jpeg"
filepath = filename
if os.path.exists(filepath):
dest_folder = file_info[filename]
os.makedirs(dest_folder, exist_ok=True)
shutil.move(filepath, dest_folder)
print(f"Moved {filename} to {dest_folder}")
break
else:
i += 1 # ファイルが見つからない場合、次の番号に
print(f"File {filename} not found. Trying next.")
# CSVファイルのパスを指定
csv_file = "test.csv"
move_images_to_folders(csv_file)
以下、説明
・shutil: pythonのモジュール。shell utilitiesの略。ファイルの操作などをすることができる。
・csvファイルの分類に従って、ファイルをフォルダに移動させるプログラム。ファイル名が抜けていると、そこでプログラムが止まってしまうので、100回ループさせて、それでもファイルがなければ、次の番号のファイルに移るようにプログラムを改良した。
2024年10月14日月曜日
Python -Vで「Python」としか返ってこないときは
windowsのターミナルで「python -V」と打てば、通常はpythonのバージョン情報が返ってくるが、「Python」としか返ってこないときは、windowsエイリアスの項目のうち、pythonのところをオフにする。場所は「アプリ」>>「アプリの詳細設定」>>「アプリ実行エイリアス」の「アプリインストーラー」(python.exeとpython3.exe)
それでも、ダメだったら、windows上のpathを確認する。
2024年9月25日水曜日
2024年9月24日火曜日
python:ファイルを読み込んで、内容を表示するプログラム
#! /usr/bin/python3
with open('test.txt','r',encoding='utf-8') as file:
content = file.read()
print(content)
#!(シェバン)の由来
pythonのなどのプログラムを書く際に、インタプリタを呼び出すため、冒頭に#!(shebang:シェバン)という記号を書く必要がある。一瞬、#と!のうち、どちらが先かわからなくなったので、由来を調べてみた。
#=Hash、!=Bang つなげてHashBangとなり、略してShbangとなったようだ。
python:forループ文
Pythonのfor文は、リストや文字列などのシーケンスの各要素に対して繰り返し処理を行うための構文です。基本的な書き方は以下の通りです
for 変数 in シーケンス:
実行する処理
例えば、リスト内の各要素を順番に出力するコードは次のようになります。
words = ['Japanese', 'English', 'French']
for word in words:
print(word)
#出力
Japanese
English
French
また、特定の回数だけ繰り返し処理を行いたい場合には、range関数を使います。例えば、0から9までの数字を出力するコードは次の通りです。
for num in range(10):
print(num)
#出力
0
1
2
3
4
5
6
7
8
9
更に、breakやcontinueを使ってループ制御を行うこともできます。例えば、特定の条件でループを終了する場合はbreakを使います。
for num in range(10):
if num == 5:
break
print(num)
#出力
0
1
2
3
4
range関数の3つの形式
range関数の3つの形式
1.range(stop) 0からstopまでの整数を生成します(stopは含まれません)
for i in range(5):
print(i)
#出力 0,1,2,3,4
2.range(start,stop) startからstopまでの整数を生成します(stopは含まれません)
for i in range(2,5):
print(i)
#出力 2,3,4
3.range(start,stop,step) startからstopまでの整数をstepの間隔で生成します(stopは含まれません)
for i in range(1,10,2):
print(i)
#出力 1,3,5,7,9
2024年6月5日水曜日
VScodeにおける仮想環境venvの作り方
python -m venv <仮想環境を作りたいフォルダ名>
仮想環境を起動するには、そのフォルダに行って「./Activate.ps1」を実行する。
仮想環境が実行されているかどうかは、現在いるディレクトリの前に(仮想環境フォルダ名)と表示されているかどうかでわかる。
抜けるときは「deactivate」で抜けることができる。
参考リンク
2024年5月20日月曜日
WindowsにVScodeとPythonをインストールして実行する方法
主な手順
1.Pythonをインストール
2.VSCodeをインストール
3.VScodeでPythonを実行できるようにする(拡張機能→Python)
4.Pythonコードを書いて、ターミナルで実行する。
参考リンク:ターミナルでPythonを実行
Pythonコンソールを閉じる方法
Pythonのコマンドが走ると、プロンプト記号が >>> に変わりました。 これは、今Pythonの言語を実行できますという意味です。 >>> はタイプしなくていいですよ ? Pythonがあなたの代わりにやってくれます。
Pythonコンソールを終了したい時は、exit() とタイプするか、ショートカット Ctrl + Z(Windows)、Ctrl + D(Mac/Linux)を使ってください。 そうするともう >>> は出なくなります。
参考リンク:Python入門
2024年1月9日火曜日
2022年10月7日金曜日
2022年2月16日水曜日
ubuntu20.04(wsl2)へのpython3のインストール
apt install -y python3.10 python3.10
と打ち込んで、python3.10をインストールできなかったので、
sudo apt install software-properties-common -y
sudo add-apt-repository ppa:deadsnakes/ppa -y
と打ち込んでから、再度、「apt install -y python3.10 python3.10」と打つとインストールできた。
次に以下のよう打って、python3から呼び出せるようにした。
update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10
update-alternatives --config python3
最後に、pip3をインストール。
apt install -y python3-pip
2022年1月27日木曜日
pipトラブル
pip -Vでもバージョンが表示されず、「python -m pip install --upgrade pip」も効かなかったが、「python -m ensurepip」で再インストールできた。
参考リンク1:Pythonを完全にアンインストールする方法
2022年1月23日日曜日
WindowsからPythonを完全に削除する方法
WindowsからPythonを完全に削除したつもりでも、Python(の特定のバージョン)フォルダやPipフォルダが残っている場合があるので、その時は手動で完全に削除する。
2022年1月12日水曜日
WindowsにおけるPython
Windows10の1903からPythonがデフォルトで下の場所にインストールされている。
C:\Users\{ユーザー名}\AppData\Local\Microsoft\WindowsApps\python.exe
自分でPythonを別の場所にインストールするときなどは注意する。
また、pythonコマンドではなく、pyコマンドで呼び出すことも多い。
pyコマンドで呼び出せるバージョンは 「py -V」で表示可能。
2022年1月10日月曜日
2021年1月4日月曜日
言語処理100本ノック 問題12
問. popular-names.txtは,アメリカで生まれた赤ちゃんの「名前」「性別」「人数」「年」をタブ区切り形式で格納したファイルである.以下の処理を行うプログラムを作成し,popular-names.txtを入力ファイルとして実行せよ.さらに,同様の処理をUNIXコマンドでも実行し,プログラムの実行結果を確認せよ
各行の1列目だけを抜き出したものをcol1.txtに,2列目だけを抜き出したものをcol2.txtとしてファイルに保存せよ.確認にはcutコマンドを用いよ.
解答例
import pandas as pd
df = pd.read_table('./popular-names.txt', header=None, sep='\t', names=['name', 'sex', 'number', 'year'])
#col1の定義 dfの中からnameを取り出して、col1と定義
col1 = df['name']
#pandasのto_csv関数を使う
col1.to_csv('./col1.txt', index=False)
#col1の冒頭5行を書き出す
print(col1.head())
出力
0 Mary
1 Anna
2 Emma
3 Elizabeth
4 Minnie
5 Margaret
6 Ida
7 Alice
8 Bertha
9 Sarah
Name: name, dtype: object
確認:ubuntuで実行
cut -f 1 ./popular-names.txt > ./col1_chk.txt
cat ./col1_chk.txt | head -n 5
出力
Mary
Anna
Emma
Elizabeth
Minnie
参考リンク