Python3関連のことを調べてみた2022年11月28日

Python3関連のことを調べてみた2022年11月28日

Tweepyを使ってリストのwordcloudを作ってみた

# 概要
フォロワーたちが今日何で盛り上がったのか、今のトレンドはどのようなものなのかがきになったので、それが1目でわかるWordCloud画像を生成することで、今のタイムラインの流れをある程度掴めるツールを作成した。

# 環境
MacBookPro 13-inch, M1, 2020
macOS Ventura 13.0.1

# 目次
– ファイル構成
– プログラム全文
– TwitterAPIの申請
– ライブラリのインポート

# ファイル構成
TL
├ .env
├ config.py
├ api.py
├ list.py
├ tweet.py
├ creat_image.py
├ tweet.txt
├ tweet_id.txt
├ stop_words.txt
└ result.png

# プログラム全文
“`.env
# 例
API_KEY=’sdS5kjFenFDig8UtMwFm5f3JQ’
API_SECRET=’5kAxS7n3uKBRCJVVQmqbDGdXkbPz4ej9SS7xYqT4JqhUyqFdha’
CONSUMER_K

元記事を表示

f13: xserver vps + ubuntu + ssh + python

.

### **[ おまとめ ]**

xserver vps を契約したので、設定メモです

**(01) 前提事項**
**(02) teraterm にて ssh 接続**
**(03) 一般ユーザーの作成**
**(04) 一般ユーザーでの ssh 設定**
**(05) sshd_config の設定**
**(06) port No. 変更**
**(07) その他の設定**
**(08) ftp 接続**
**(09) python / pip の設定**
**(10) cron の設定**
**(11) イメージ バックアップ**

### **[ 1. キッチン ]**

 **・Xserver VPS / 2GB プラン**
  **-> Ubuntu 22.04 (64bit)**

 **・Windows10 64bit pc**
 **・Tera Term Pro version 2.3**


### **[ 2. 調理 ]**

**—- (01) 前提事項 ————————-**

**[ V

元記事を表示

40代おっさん面会予約アプリを作ってみる⑥

## 本記事について

この記事はプログラミング初学者の私が学んでいく中でわからない単語や概要を分かりやすくまとめたものです。
もし不正などありましたらコメントにてお知らせいただければ幸いです。

## 前回の記事





## 下記の場合にエラーを出す

– 定員より多い予約人数の場合
– 利用時間を超えている場合
– 開始時刻 >= 終了時刻 の場合
– 予約がかぶっている場合(下記の場合に被りが発生)
– 登録済、終了時刻 > 新規登録、開

元記事を表示

AWS IoT SDK for Python v2 で publish

こちらのページと同じことを行ないました。
[Python の使用時に、デバイスから AWS IoT Core に MQTT メッセージを発行する方法を教えてください。](https://aws.amazon.com/jp/premiumsupport/knowledge-center/iot-core-publish-mqtt-messages-python/)

## プログラム

“`py:iot_publish.py
#! /usr/bin/python
#
#
# ——————————————————————
from awscrt import io, mqtt, auth, http
from awsiot import mqtt_connection_builder
import time
import json
import sys
#
# ——————————————————————
ENDP

元記事を表示

[Mapデータタイプ] 5分で実装可能!!!Dictionaryを応用しヒューマンリーダブルなコードを書こう

## 概要
– 関数の中にif文で条件分岐する際に、Dictionaryを使う場合と使わない場合で比較をし、その違いを紹介する
## 目的
– PythonにおけるDictionary、関数の理解
– ヒューマンリーダブルなコードを書く意識を高める
## Dictionaryとは
– キーと値をペアで管理できるデータタイプ
“`python
dict_test = {“key”: “value”}
print(dict_test[“key”]) # キーを指定して値へアクセスできる
# “value”
“`

# 今回実装するのは自宅電話番号のバリデーション
– 市外局番が**050**で始まる場合は11桁のみを許容する。
– 市外局番がそれ以外で始まる場合は10桁のみを許容する。

## Dictionaryを使用しないケース
“`base.py
# 上にはクラスの定義とpydanticのデコレータでバリデーションを記述している
# 省略↑
def home_phone_number_local_area_code_split(self):
if sel

元記事を表示

paizaラーニング「階乗の末尾に 0 はいくつ付く? Python3編」

https://paiza.jp/works/mondai/loop_problems2/loop_problems2__factorial_zero
#### 私の解答
“`Python3
n = int(input())
ans = 1
for i in range(2,n+1):
ans = ans * i

div_count = 0
while True:
if ans % 10 == 0:
ans //= 10
div_count += 1
else:
break

print(div_count)
“`
前の2種類の問題の解答を組み合わせて作りました。解答例と比べて長すぎますね。
#### 解答例
“`Python3
N = int(input())

count_zero = 0
while N > 0:
count_zero += N // 5
N //= 5

print(count_zero)
“`
– 整数 N を受け取ります。また、末尾の 0 の個数を保持

元記事を表示

paizaラーニング「階乗の計算 Python3編」

https://paiza.jp/works/mondai/loop_problems2/loop_problems2__factorial
#### 私の解答
“`Python3
n = int(input())
ans = 1
for i in range(2,n+1):
ans = ans * i
print(ans)
“`
#### 解答例1
“`Python3
N = int(input())

factorial = 1
for i in range(2, N + 1):
factorial *= i

print(factorial)
“`
#### 解答例2
“`Python3
from math import factorial

N = int(input())

print(factorial(N))
“`
– Python の場合、 math モジュールの factorial 関数を使用すると、階乗の計算を行うことができます。

元記事を表示

paizaラーニング「毎日増加するお金 Python3編」

https://paiza.jp/works/mondai/loop_problems2/loop_problems2__inc_percent
#### 私の解答
“`Python3
A, B = map(int, input().split())
num = 0
while A <= B: A = int(A * 1.1) num += 1 print(num) ``` 前の問題の解答例を参考にしたからか、全く一緒でした!!! #### 解答例 ```Python3 A, B = map(int, input().split()) num = 0 while A <= B: A = int(A * 1.1) num += 1 print(num) ```

元記事を表示

paizaラーニング「N が M ずつ増えたときにいつ K を越える? Python3編」

https://paiza.jp/works/mondai/loop_problems2/loop_problems2__inc_m
#### 私の解答
“`Python3
n,m,k = map(int,input().split())
ans = 0
if n <= k: while n + m <= k: n = n + m ans += 1 print(ans+1) else: print(0) ``` 私の解答は長すぎでした。 #### 解答例 ```Python3 N, M, K = map(int, input().split()) num = 0 while N <= K: N += M num += 1 print(num) ```

元記事を表示

paizaラーニング「10 進数から M 進数に変換 Python3編」

https://paiza.jp/works/mondai/loop_problems2/loop_problems2__conv_nbase

#### 私の解答
“`Python3
N,M = map(int,input().split())

shinsu= 0
i = 0
while N > 0:
digit_num = N % M
shinsu += digit_num * pow(10, i)
N //= M
i += 1

print(shinsu)
“`
前の問題の解答例を修正して書きました。

#### 解答例
“`Python3
N, M = map(int, input().split())

base = “”
while N > 0:
base += str(N % M)
N //= M

print(base[::-1])
“`
– N が自然数であれば、M で割った余りを取ると、M 進数に変換した際の M^0 の桁を求めることができます。
– M^0 の位を求めたら N を M で割り、もう一度同じ操

元記事を表示

paizaラーニング「10 進数から 2 進数に変換 Python3編」

https://paiza.jp/works/mondai/loop_problems2/loop_problems2__conv_binary

– 整数の10進数を2進数に変換
算数か数学で習ったことがあるような気がしましたが、全く覚えていませんでした。ググってみたところ、整数の10進数を2進数に変換するには、変換したい10進数を商が0になるまで2で割りつづけ商と余りを求めればよいと、基本情報技術者講座のウェブサイトに掲載されていました。結構考えてみたのですが、プログラムが思いつきませんでした。今回は解答例を参照して勉強することにしました。
#### 解答例1
“`Python3
N = int(input())

binary = 0
i = 0
while N > 0:
digit_num = N % 2
binary += digit_num * pow(10, i)
N //= 2
i += 1

print(binary)
“`
– N % 2とすることで、2 進数にした場合の数字を求め、pow(10, i) を掛けることで現在の桁に合

元記事を表示

【Python】ロト6とロト7の当選データから見る傾向(次にきそうな数字とは?)

# 1.はじめに

コロナ禍からテレワーク。
通勤時間にかける時間を別の事に使う時間が増えた。
少し前から始めたロト6。
気まぐれな攪拌機から飛び出す番号のかかれたボール。
何度も見送った高額当選。
[前回](https://qiita.com/xmorning777/items/beccef26e2e3e62847f5)記事とは違う角度の「前回出た数字から次回でそうな数字」の傾向を調べてみることにした。
今回はロト7の傾向も見れるようにしたい。

# 2.流れ

## 2.1
ロト6かロト7のどちらの傾向が知りたいか入力
(ロト6なら6を、ロト7なら7を入力)
## 2.2
開催回の範囲(開始回と終了回)を入力
ロト6の傾向を見る場合はloto6_2.csvを読み込む。
ロト7の傾向を見る場合はloto6_2.csvを読み込む。
(loto6_2.csv:ロト6の当選結果番号のcsvファイル、
loto6_7.csv:ロト7の当選結果番号のcsvファイル)
指定した範囲でdataframeを作成しておく

## 2.3
各数字の出現回数の辞書の作成

## 2.4
`前回数字と今

元記事を表示

PythonでSubversionのファイルやフォルダ情報をCSV形式で保存する

# pysvnについて
– Subversionのpython用のAPIで、svnをインストールする必要はありません。
– svnをラップしているそうなので、機能は一緒だと思います。
– https://github.com/dsoprea/PySvn
– https://pysvn.sourceforge.io/Docs/pysvn_prog_ref.html

# pysvnのインストールについて
### Windows環境
– インストーラーでインストールできます
– https://pysvn.sourceforge.io/downloads.html
### Mac環境
– インストーラーはありますが、py39-python_org-pysvn-svn1142-1.9.18-2091-x86_64.dmgをインストールしようとしたところエラーになりました。Pythonのパスが「/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages」で固定されており、pyenvを使

元記事を表示

‘method’ object is not subscriptableのありがちなミス

# ‘method’ object is not subscriptableが出たときに確認したいポイント

毎度くだらないミスですが、自分用に投稿します。先に結論を書いてしまうと、メソッド名の後に()が抜けていることが原因でした。

# 前提コード

“`python:
class Hoge() :
def hage(self, list) :
return(list)#リストを返す
hoge = Hoge()
hoge_hage = hoge.hage#ここがマズイ!()が抜けている
hoge_hage[0]#エラー。自分はリストだと思っている。
“`

# 解決
(メソッドオブジェクトは添え字は)ないです、という意味です。
しっかりかっこを入れましょう。

“`python:
class Hoge() :
def hage(self, list) :
return(list)#リストを返す
hoge = Hoge()
hoge_hage = hoge.hage()#ヨシ!
hoge_hage[0]#1919
“`

元記事を表示

Python+eelでReactを使ってGUI開発(テンプレ)

# このリポジトリについて

PythonデスクトップアプリのGUIをReactで開発するためのライブラリeelを使えるようにするためのテンプレート

[https://github.com/dende-h/sample_eel](https://github.com/dende-h/sample_eel)

業務にてデスクトップアプリ開発が検討されており、Web技術でGUI作成ができるライブラリということでいろいろ試してみたものです

Develop起動時のホットリロードも効きそうなので、ちょっとこれを捏ね繰りまわして要件に合うものが作れそうか試してみたいと思います

ここまで来るのに1週間かかりましたが(Pythonの入門なども含めると2週間)、このテンプレートの構成でそれなりに使っていけそうかなと思ったので、ご興味ある方はぜひ試してみてください。Pythonで仮想環境化に作るのでPCの環境も荒れませんよ( ´艸`)

## 利用させていただいた元リポジトリ

[https://github.com/python-eel/Eel](https://github.com/python

元記事を表示

Python 3 Typing 早見

書きかけ。
知りたい typing の書き方があったらコメントしていただければ調べます。

# 入門

### 変数に使う
“`Python
hoge: int = 1
“`

変数を宣言せずに type hint だけ書くこともできる。

“`Python
hoge: int
“`

宣言したように見えるが呼び出すと not defined となる。

### 関数の返り値に使う
“`Python
def fuga(hoge: str) -> bool:
return True
“`

# 基本

### リスト
“`Python
__list: list[str]
“`

### 辞書
“`Python
__dict: dict[str, str]
“`

### 全てを受け入れる型 Any
“`Python
from typing import Any

anyyyyy: Any
“`

### 複数の型
“`Python
from typing import Union

hoge: Union[int, str] = 1
hoge: int

元記事を表示

apple siliconでseleniumコンテナを立ち上げてスクレイピングを行う

### 経緯

スクレイピング対象のwebページが動的(javascript)に生成するページたった。
それを解決するためSeleniumの知識が必要そうだった。
実際に動かすまでに時間がかかったので備忘録として残す。

### 目的

M1 macでdocker for macで立ち上げたseleniumコンテナを立ち上げる
seleniumコンテナを使って、動的に生成されるNHKニュースサイトの一覧を取得する

### 前提

– PC: M1 Macbook pro 14インチ 2021
– OS: macOS 12.6
– 言語: python3.9.6

### Seleniumとは

Webアプリケーションをテストするためのフレームワーク
Webブラウザを自動操作することができ、動作検証することができる。

### 必要なもの

– Webブラウザ
– Chrome,Edge,Sarariなど
– WebDriver
– ブラウザを操作するためのAPIを公開するモジュール。ブラウザとバージョンをあわせる必要がある
– Selenium

元記事を表示

Django新しいアプリケーションの作成方法

Djangoには新しいアプリケーションを作成するときの雛形が用意されている。
それを用いて、アプリケーションのディレクトリーを作成し、URLディスパッチを出来るようにするところまでをまとめる。

まず、Djangoのある仮想環境へ移動する。ターミナルやコマンドプロンプト(cmp)で実行する。
Anacondaを使用している場合は、以下の方法を用いる。

“`
#仮想環境の構築
conda create -n djangoenv python=3.10 #djangoenvは仮想環境名、pythonのバージョン指定がなければ記入は不要。
#仮想環境の有効化
conda activate djangoenv#仮想環境名
#仮想環境の無効化
conda deactivate
#作成した仮想環境の一覧
conda env list
#作成した仮想環境の削除
conda remove -n djangoenv –all #djangoenvは仮想環境名
“`

そして、Djangoの実行できる環境を有効化したら、以下のコマンドでアプリケーションの雛形を作成する。
“`
django-a

元記事を表示

【Django】静的コード分析ツール flake8 の導入

# 概要
## コーディング規約って?
システム開発は通常数人のチームで開発を行うけど、人が違えばコードの書き方なんて違って当然ですよね?

しかし、書き方が大きく違ってしまうと、他の人が見てわからなくなったり、なんなら作った自分がわからなくなったり・・。
これは、バグの修正や拡張のしにくさにつながって、メンテナンスしにくくなってしまう原因となるわけです。

そこで開発者によってコードの書き方のキマリとして、**コーディング規約**というものが存在します。

## それっておいしいの?
コーディング規約を守ることで、コードの保守性や品質を高めることができると言われています。
ちなみにコードの保守性とは、主に以下のようなことかなと思います。
– 誰でも理解しやすい
– バグを発見

元記事を表示

Pythonでエラー:error: (-5:Bad argument) in function ‘inRange’

# 前提
Pythonで画像編集処理を行っていた際にぶつかったエラーになります。非常に初歩的なものですが少し悩んでしまったので自分用に投稿。

エラー内容は下記。

“`:python
OpenCV(4.6.0) :-1: error: (-5:Bad argument) in function ‘inRange’
> Overload resolution failed:
> – src is not a numpy array, neither a scalar
> – Expected Ptr for argument ‘src’
“`

# 実現したいこと

`cv2`モジュールの`inRange`メソッドを用いて、読み込んだ画像を色で閾値を設けて処理したい。コードがこれ。

“`python:
# 抽出関数を定義
def ext(img_bw_func, bgrt_obj_func) :
# 0以下、255以上の値が出ないように処理
minbgr = []
maxbgr = []
for i in range(0

元記事を表示

OTHERカテゴリの最新記事