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

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

サイコロをpythonで作ろう!(python初心者向けシリーズ①)

python初心者向けシリーズ①
|サイコロを作ってみよう|
ーーーーーーーーーーーーー

サイコロを作るには何が必要でしょう?

1〜6(通常サイコロ)の数字と、サイコロを振ること。

数を用意するのは簡単なので…サイコロを振るのを

import random

a = random.randint(1,6)←ここの数を変えるとサイコロの数変えられます
aは英数字ならなにを入れても構いません。
これを関数と言います。

サイコロだけではなくおみくじを作ったり、ランダムが必要であればランダム関数を使えます。

まとめ

“`python3
import random
dise = random.randint(1,6)
print(“サイコロ”)
“`

random,randinはそれ以外にも
random.random() :0から1までのランダムな数値を出力する。(小数点だからね??)
random.randint(a, b) :aからbまでの間のランダムな整数を出力する
という種類があります。

それではまた別の記事でお会いしましょう。

元記事を表示

python tkinterで神経衰弱作ってみた

# tkinterで神経衰弱作ってみた
初投稿
python歴約4ヶ月なのでコード汚い
記事の書き方とかコードとか何かアドバイスあればお願いします。
ファイル分けろって意見は大丈夫です。これから頑張ります
## クラス変数
“`
import tkinter as tk
import time
from trump import Trump

class Game:
index = 0
count = 0
turn = 0
num = 0
scores = [0, 0]

before_x = 20
before_y = 20
check_x = list()
check_y = list()
cursor_x = 0
cursor_y = 0
mouse_x = 0
mouse_y = 0
mouse_c = False

trump_back = list()
trump_list = list()
for i in range(4):
trump_back.append([0,0,0,0,0,0,0,0,0

元記事を表示

Pythonの基礎知識(第一回の授業で自分が書いたノート)

# 関数
Pythonにはさまざまな関数が存在する。
例)
print() ⇨()内に入れたものをターミナルに出力する関数
len() ⇨()内に入れたものの文字数や要素数を数える関数
関数=便利なプログラム

# print()について
printは、出力と改行の意味を持つ
## 改行を消したい場合…
⇨endに『空文字(“”)』を入れる
“`
print(“ハローワールド”,end=””)
“`

元記事を表示

pythonで遊ぶだけ。

pythonで出力してみましょう!

pythonではprintで出力します。

~~~
print(‘こんにちは世界’)
~~~
:::note warn
注意
シングルクォーテーションまたはダブルクォーテーションで囲みましょう。
:::

pythonで入力してみましょう!

pythonではinputで入力します。

~~~
A=input(‘入力>>’)
print(A)
~~~
Aにターミナルで入力した文字が入ります。

printで入力した文字が出てきます。

実行結果

~~~
入力>>AAA
AAA
~~~

:::note warn
注意
シングルクォーテーションまたはダブルクォーテーションで囲みましょう。
:::

元記事を表示

PYTHONってなんぞ

Pythonむずかしい

Pythonはみんなに優しくて始めやすいと言われています。ですがPythonは関数を使ったりするのでむずかしいです。頑張ってw

元記事を表示

Pythonの開発環境構築

# はじめに
個人的なメモです。
更新していく予定です。

# 対象者
– python の環境をdevcontainer を使って作りたい人

# 使用したマシンについて
– macOS Monterey
– MacBook Pro
– Vscode ver 1.70.1

# Pythonの開発環境を構築する
1. ディレクトリ作成
1. Dockerfile & devcontainer.json 作成
1. poetry の追加, python 周辺の設定など

## 1.ディレクトリの作成
今回は, `python-dev-template` と言う名称でディレクトリを作成しました。
github にも残しておこうと思うので, リポジトリの作成も行いました。
作成後, リポジトリの初期案内に沿ってREADME を作成しただけのリポジトリです。

![スクリーンショット 2022-10-11 22.10.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/298059/0e12a0fc-

元記事を表示

pyenv install x.x.xがエラー終了...原因は最近必須になったあのモジュールに有った

Pythonのバージョン切り分けにpyenvを愛用しています.加えてrbenv,goenv,nodenvも愛用しています.今後も`**env`の利用が増加する可能性も有りそうです.そこで`anyenv`繋がりで全ての`**env`を管理出来る様にするための作業をしました.pyenvを除いて全て上手く再構築出来ました.ところが,pyenvだけ上手く復活しません.pyenv install 3.10.7と実行しようものなら,怒濤のエラー...:scream: :scream_cat: 仕方が無いので,最新バージョンのPython環境の構築には対応していないHomebrew版のpyenvを再度インストールするも,こちらも正常に動作せず,同様のエラー終了に...:scream: :scream_cat: 万事休すかに思われたのですが,原因を探ってみると意外な事実が判明しました.この記事はその記録です.

# 分かった事実: Python3.10.xからOpenSSL1.1.1が必須に
以下の記事で言及が有りますが,どうやらPython3.10.xからOpenSSL1.1.1が必須になりました.

元記事を表示

【Python】プログラミング問題 文字と整数の組のソート2  を自分なりに解説【paiza】

# はじめに
paizaラーニングはプログラミング学習が出来るプラットフォームです。
問題はランク付けしてあり、ランクが上がると難易度がアップします。
paizaラーニングのレベルアップ問題はユーザー同士で解答を教え合ったり、コードを公開することが可能です。
自分が難しいと感じた問題のコードを解説することでスキルアップをする事が今回の目的でした。

誤りや改善点がありましたらご指摘頂けますと嬉しいです。

# お題 
## お題のリンク
https://paiza.jp/works/mondai/prob60/sort_add_9

## 問題文

>1行目に行数を表す整数 n、続く n 行の各行で「文字」と「整数」の組が空白区切りで入力されます。
>n 個の組について、「文字」の値が同じ組同士の数値を足しあわせてまとめ、まとめた数値の降順で
>文字とまとめた数値の組を出力してください。
>この際、まとめた数値は重複しません。

## 入力される値
入力は以下のフォーマットで与えられます。

n
S_1 D_1
S_2 D_2

S_i D_i

S_n D_n

S_i

元記事を表示

wavファイルの作成

何故か急にwavファイルを作りたくなったので作成してみましたので、その際に覚えた知識をメモとして残します。

# ライブラリ
本投稿では下のライブラリを使います。
* math(正弦波を作成するため)
* numpy(1次元配列を扱うため)
* scipy(wavファイルの作成のため)
* playsound(wavファイルの再生のため)

# 波形を作る
サンプルとして100Hzの正弦波を作成します。なお、サンプリングレートを44100Hzとするため、441個で1周期となる正弦波を100個(つまり1秒分)作成しています。
“`python:
import math
data = [ math.sin(2 * math.pi * i / 441) for i in range(44100) ]
“`

# データを整数化する
wavファイルにするには`int16`にしないといけないので、波形の最大値で割り、`int16`の正の最大値である`32767`を掛けてから、`int16`にしています。
“`python:
import numpy as np
data2 = np.int

元記事を表示

Dockerを用いてLabelImgを使用する on Ubuntu

# やり方

下記の内容を記述したDockerfileを用意します。

“`docker
FROM ubuntu:20.04
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y pyqt5-dev-tools python3-pip git
RUN git clone https://github.com/tzutalin/labelImg.git && \
cd labelImg && \
pip3 install lxml && \
make qt5py3
CMD [“python3″,”labelImg/labelImg.py”]
“`

イメージをビルドします

“`bash
$ docker build -t labelimg .
“`

GUI表示ができるように設定します

“`bash
$ xhost +
“`

コンテナを作成・実行します

“`bash
$ docker run -it –rm -e DISPLAY=$DISPLA

元記事を表示

40代おっさんPythonを勉強する(データ構造と組み込み関数④)

## 本記事について

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

## データ構造と組み込み関数

前回の記事


### 辞書型

– 辞書型の作り方
– 基本的な代入

“`python
dic1 = {1:’a’, 2:’b’, 3:’c’ } # 辞書型は{}
print(dic1)
“`

– リストやタプル型から

“`python
pairs = [(1, ‘a’),(2, ‘b’),(3, ‘c’)]
dic1 = dict(pairs) # dictの変換関数で辞書型を作成
print(dic1)
“`

元記事を表示

【Python】CSVファイルに出力する時系列データを更新させない方法

# 現状
Arduinoを使ってセンサのデータを取得し,取得したデータをPythonで受け取ってCSV形式で保存したい.実装したところ,CSVファイルで時系列データが更新されてしまう.

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/642821/e62a4ff8-3bc3-4a09-a634-548bf43256ff.png)

“`python:該当プログラム
date = datetime.datetime.now().strftime(‘%Y-%m-%d %H:%M:%S’)
with open(‘./data.csv’, ‘w’ , encoding= ‘utf-8’ ) as f:
print(‘{},{}’.format(date,data),file=f)
“`

# 解決方法
 `open(ファイル名, モード)`でファイルをモードに従って開く.モードを`a`に変えることで解決できた.`w`は書き込み専用で,ファイルへの書き込みは,同じファイル名の

元記事を表示

Pythonをpyenvを用いて管理する(Mac向け)

## はじめに
ローカルマシンで複数のプロジェクトを開発する時にバージョンの異なるPythonを使うことは往々にしてあると思います。
単一バージョンをインストールしていると、毎回インストールとパスを通す作業が発生しますが、
pyenvの場合はコマンドだけでPythonのバージョンの切り替えが可能です。
(最近はDockerを使うのでホストマシン側のPythonに依存することは少ないかもしれませんが。。)

今回はpyenvのインストールとバージョン変更手順を説明します。

## Homebrewのインストール
ターミナルを開き、以下のコマンドでMacのパッケージ管理ツールのHomebrewをインストールします。
“`
% /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”
“`
参考
https://brew.sh/index_ja

## pyenvのインストール
ターミナルで以下のコマンドを実行します。
“`
% brew install

元記事を表示

MetPyの単位変換

# はじめに

MetPyという気象系Pythonライブラリは,’unit-aware calculations’(単位を陽に定義する計算)の精神に基づき作成されており,事前に変数の単位を定義しておけば単位変換を”よろしく”やってくれるので,つまらない計算ミスを減らすことができる(と思っている).

単位変換を簡単にできるのだが,データのクラスによって使い方が異なり困惑したので,まとめておく.

結論から書くと,pint.quantityは`.to()`というメソッドを,xarary.DataArrayには`.metpy.convert_units()`というメソッドを使う.

# unitsの使い方とpint.quantity

metpy自体はpipやcondaやmacportsで簡単にインストールできる.([Install Guide – Metpy User Guide](https://unidata.github.io/MetPy/latest/userguide/installguide.html))

metpy.units.unitsをインポートする.fromを使う

元記事を表示

metpy.unitsをxarray.DataArrayに適用するワンライナー

# はじめに

[MetPy](https://unidata.github.io/MetPy/latest/index.html)は,[xarray](https://docs.xarray.dev/en/stable/)(多次元データ解析ライブラリ)と[pint](https://pint.readthedocs.io/en/stable/)(単位の概念を付与するライブラリ)を組み合わせた,気象系計算ツールの豊富な大変ありがたいPythonライブラリである.
xarrayに基づいているので,netcdfとの相性はとても良く,使いやすい.

事前処理として,次元のある変数には単位(metpy.units.units)を定義する仕様となっているが,単一変数であってもxarray.Datasetには単位を定義できない,という落とし穴?がある.(複数変数を保持しうるので,考えれば当たり前のこと,,)

“` python3
import xarray as xr
from metpy.units import units

f = ‘file_name.nc’
v = ‘variabl

元記事を表示

40代おっさんPythonを勉強する(データ構造と組み込み関数③)

## 本記事について

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

## データ構造と組み込み関数

前回の記事

### リスト内包表記

– リスト内包表記はPythonの特有な構文
– [式 for 任意の変数名 in range()など]

“`python
sep = [i for i in range(10)]
print(sep)
“`

– if-elseの条件分岐構文を使ってもよい

“`python
sep = [i for i in range(10) if i%2 == 0]
print(sep)
sep = [i if i%2 == 0 else None for i in range(10) ]
print(

元記事を表示

Django+AWS+freenomでhttpsを有効化するまでの話

# はじめに
今回はdjangoのアプリをAWSにデプロイし, freenomとRoute53とACMとELBを用いてドメインの取得とhttpsを有効化した際の方法について述べていきます.
かなりボリュームがあるのですが, サラミ出版みたいになるのが非常に嫌だったので, 1つの記事にまとめさせていただきました.

本記事の構成は以下のようになっています.
[①djangoのアプリをAWSにデプロイするまで](#djangoのアプリをawsにデプロイするまで)
[②freenomとRoute53を用いてインスタンスにドメイン名でアクセスするまで](#freenomとroute53を用いてインスタンスにドメイン名でアクセスするまで)
[③ACMとELBを用いてhttpsを有効化するまで](#acmとelbを用いてhttpsを有効化するまで)

djangoのアプリ制作が完了済みで, 既にGitHub上に公開されているという前提でお話をします.
NginxやApachといったサーバアプリを使用せず, RDSなども使わず, djangoにデフォルトで備わっているもののみで実装することを

元記事を表示

How to chage your default python version from 2 to 3 on Mac?

Entry the following command on your console.

sudo ln -nfs /usr/local/bin/idle3 /usr/local/bin/idle
sudo ln -nfs /usr/local/bin/pydoc3 /usr/local/bin/pydoc
sudo ln -nfs /usr/local/bin/python3 /usr/local/bin/python
sudo ln -nfs /usr/local/bin/python3-config /usr/local/bin/python-config
sudo ln -nfs /usr/local/bin/pip3 /usr/local/bin/pip

Finally, udpate your profile:

source ~/.bash_profies

元記事を表示

[Python入門] #1 HelloWorldとPrintについて

# 目次
[1.はじめに](#1-はじめに)
[2.前回のおさらい](#2-前回のおさらい)
[3.HelloWorldの解説](#3-HelloWorldの解説)
[4.printについて](#4-printについて)
[5.使ってみよう](#5-使ってみよう)
[6.さいごに](#6-さいごに)
# 1. はじめに
この記事ではPythonでのコードの書き方について簡単に説明します。今回は主に**Print**を扱いますので、すでにPrintの使い方を理解している人は次の記事に進んでください。
Replitなど(オンラインエディタ)でも同様にコーディング可能ですので、ぜひご活用ください。
(この記事はWindows向けで、筆者はWindows10・Python3.9・メモ帳を使用しています。)
# 2. 前回のおさらい
Python3のインストールなどの環境構築と、少しだけコーディング。
前回紹介の**HelloWorld**についても今回解説します。
# 3. HelloWorldの解説
“`py
# HelloWorldを表示するコード
# ‘#’はコメントを意味します。

元記事を表示

[Python入門] #0 環境構築

# 目次
[1.はじめに](#1-はじめに)
[2.Pythonについて](#2-Pythonについて)
[3.インストール](#3-インストール)
[4.スクリプトエディタ](#4-スクリプトエディタ)
[5.使ってみよう](#5-使ってみよう)
[6.さいごに](#6-さいごに)
# 1. はじめに
Pythonに関して基礎の基礎に関する質問をもらうことが結構あったので基礎に特化した記事を書いてみようと思い書いている次第です。
この記事ではPythonを使う前に、環境構築について説明します。もうすでに構築済み、理解できているという方は次の記事に進んでください。
(この記事はWindows向けで、筆者はWindows10を使用しています。)
# 2. Pythonについて
グイド・ヴァン・ロッサムにより創り出され、1991年にリリースされたプログラム言語の一種です。Python2とPython3があり、場合によっては2のみ3のみのものも存在するので気を付けてください。Python2はサポートも切れているため、**この記事では “Python3.9” を使用します。**
# 3. イン

元記事を表示

OTHERカテゴリの最新記事