Python関連のことを調べてみた2022年09月23日

Python関連のことを調べてみた2022年09月23日
目次

Lambda(Python)のテストイベントを作成するために、関数の先頭に入れる1行

# はじめに
「API Gateway→Lambda」などのLambdaを書くときに、最初にlambda_handlerのeventに渡ってくるデータを取得したい場合のワンライン、コピペ用メモです。

# Lambda
“`Python
print(json.dumps(event, ensure_ascii=False))
“`
まず、この1行を入れて、APIを送信するなどして、Lambdaを動かします。
eventの内容をCloudWatchLogsから取得して、テストのイベントJSONに使います。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/155165/19be57b9-0eb1-043e-b8a8-e5d3a25adf9c.png)

# おわりに
小技として記事にしてみました。

元記事を表示

指数表示

桁数が多い数値は見づらいです。例えば2の30乗を計算してみます。

“`python
x = 2**30
print(x)
“`

↓出力

“`
1073741824
“`

ぱっと見、桁数が分かりませんね。Pythonのf文字列(フォーマット済み文字列リテラル:f-string)を用い、変数名の後ろに「:e」を付けると指数表示されます。

“`python
print(f'{x:e}’)
“`

↓出力

“`
1.073742e+09
“`

これで桁数(この場合は10^9の桁数)が一目で分かるようになりました。eの前の数字部分(仮数部)を小数点以下何桁まで表示するかは、eの前に「.数字」を付け足します。

“`python
print(f'{x:.1e}’)
print(f'{x:.2e}’)
print(f'{x:.3e}’)
“`

↓出力

“`
1.1e+09
1.07e+09
1.074e+09
“`

元記事を表示

OpenAIの音声認識Whisperがすごいので,Google Colabで試してみた

# はじめに
2022/09/22にOpenAIが音声認識モデルWhisperを発表しました.Whisperは人間レベルのロバスト性と音声認識の精度を持ったニューラルネットワークであり,オープンソース化されているので誰でも利用可能です!
[参考文献]
公式サイト:https://openai.com/blog/whisper
論文   :https://cdn.openai.com/papers/whisper.pdf
Github  :https://github.com/openai/whisper

# Whisperの概要
Whisperは68万時間分の大規模なデータセットで学習された自動音声認識モデルであり,アクセントやバックグラウンドノイズ,および専門用語に対する堅牢性が向上しています.アーキテクチャは,encoder/decoder Transformerとして実装されており,30秒ごとに分割された入力オーディオがLog-mel spectrogramに変換されてからエンコーダに渡されています.デコーダでは,対応するテキストを予測するように学習されており,言語識別,フレ

元記事を表示

Atcoder 始めました.やったことまとめ(Python)

Atcoderを始める人,Pythonで進めていきたい人向けにやったことをまとめていこうと思います.

# 目標
水色をまずは目指したいと思います!
アプリ開発や機械学習系の研究はしていますが,アルゴリズムあたりは苦手です...

# DockerでPython環境構築
特に高速に処理する必要はないので,Dockerで環境構築します.
今回作ったフォルダはGitHubに上げてます.
https://github.com/kami9811/atcoder_python_environment

# 参考にするところのリストアップ
会員登録と同時にコンペの準備をやりました(2022/9/22)

実際に終わったやつから[DONE]をつけていきます

__環境のヒント__
– https://qiita.com/marogoma/items/c39ee7638c2a3ae7552d

__練習__
– [DONE: 2022/9/23] https://atcoder.jp/contests/practice
普通に練習のB問題時間かかって笑ってしまった.

__Python特化の練習部__

元記事を表示

【NotionAPI×Python】祝日をカレンダーに登録する

# まえがき

個人のスケジュール管理を紙媒体からNotionに移行することにした。
紙媒体だとスケジュール帳を探し出したり、筆記用具で書き込むのが面倒で管理するモチベが湧きにくい。
それに対してNotionはWebにアクセスできればすぐ参照、編集できるし、デザインがおしゃれなのでガンガン使いたくなる(個人の感想)。

しかしNotionのカレンダーはデフォルトでは祝日を表示しないため、祝日の把握をする上では使い勝手がよくない。
表示させるためには手動で祝日を1日ずつ登録しなければならない。手動での登録は面倒ということでなにか打てる手はないだろうか?と思い、その謎を解明するため、我々調査隊はアマゾンの奥地へと向かった。

# Notionとは
– [ホームページ](https://www.notion.so/ja-jp/product)
– 以下例に限らずあらゆる目的に応じた手段として使える(Notionの紹介コンテンツでは近しいものとしてEverNoteと比較されたりする)。
– チーム活動におけるタスク管理、進捗管理、予定管理etc….
– 個人活動における覚

元記事を表示

[python] 特定の名前を持つファイルを自分のデスクトップに集める方法

# はじめに
欲しいと思ったファイルを会社の共有フォルダから見つけ出すことは時間がかかってしまう。
共有フォルダは自分が欲しいファイル以外にも多くのファイルが存在するからだ。
また、フォルダでのファイル検索機能だとファイルが多すぎて時間がかかりすぎてしまう。
今回は必要な名前を持つファイルをすべて自分のデスクトップのフォルダにコピーしてくることを目標とする。

# 環境
python 3.7.8
window 10

# 構成
“`

┣━━ 共有フォルダ/
┃ ┗━━━━ Delta/
┃ ┗━━━━ CBA001/
┃ ┗━━━━ CBA001.xlxs
┃ ┗━━━━ Oil/
┃ ┣━━━━ CBA001 30′.xlxs
┃ ┗━━━━ CBA001.xlxs
┃ ┗━━━━ 成分調査/
┃ ┣━━━━ CBA001 in Water.xlxs
┃ ┗━━━━ CBA001.xlxs
┃ ┗━━━━ 強度/
┃ ┣━━━━ CBA001-007 200h.xlxs

元記事を表示

pythonでカッコのないメソッド呼び出しは何なのか。「メソッドオブジェクト」らしい。

# カッコのある通常のメソッド呼び出し

“`py
arr = [3,2,1]
arr.sort()
arr # [1, 2, 3]
“`

# カッコを付けないとメソッドオブジェクトが得られる

“`py
arr = [3,2,1]
arr.sort #
arr # [3, 2, 1]
“`

メソッドは実行されていない。
このオブジェクトはなんやねん。

# メソッドオブジェクトを一時変数に覚えさせておいて、あとで実行する

ってことが出来るようだ。

“`py
arr = [3,2,1]

do_sort = arr.sort
do_sort()

arr # [1, 2, 3]
“`

# 参考

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/89618/dd7d6ec3-1fb3-6d2b-a71b-d97c5d63d1b6.png)

https://doc

元記事を表示

httpPythonでwebサイトの構築 Part4 ブログサイト完成

[前回の記事](https://qiita.com/Taku_nakahara/items/a221ca689edcf4fce113)はDBの構築とadminsサイトへのデータ登録を行いました。
今回のきじではいよいよブログサイト編ラストになります。
記事一覧表示から詳細の表示までになります。
今回はまず完成したページから見てみましょう。

完成したページ

記事一覧

url:/localhost:8000/index

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/402159/792062c8-86f1-773a-bc31-8db37bffe960.png)

記事詳細

「記事本文」をクリックすると表示されます。url:/localhost:8000/article/該当するpk

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/4021

元記事を表示

Pythonでwebサイトの構築 Part3 DBの構築と記事追加

[前回の記事](https://qiita.com/Taku_nakahara/items/7dbde3dcd9388aab7d57#1-%E3%83%96%E3%83%AD%E3%82%B0%E3%82%B5%E3%82%A4%E3%83%88%E3%81%AB%E5%BF%85%E8%A6%81%E3%81%AA%E6%A9%9F%E8%83%BD%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6)では静的ページの表示までを行いました。今回はDBの構築から記事一覧の表示を行います。

1,DBの構築

今回は簡易版としてDjangoプロジェクト立ち上げ時に作成されるsqLite3というDBを利用します。
DjangoでDBを扱うにはまずテーブルを作成して、マイグレーションしてあげる必要があります。
DBの作成はapp/models.pyで行います。

“`Python:models.py
from django.db import models

class Category(models.Model):
name = models.

元記事を表示

DDBJの提供する微生物ゲノム遺伝子アノテーションツール, DFASTをGoogle Colaboratoryで利用する

DFASTはDDBJの提供する微生物ゲノム遺伝子アノテーションツールである。

https://www.nig.ac.jp/nig/ja/2019/08/research-highlights_ja/rh20190830.html

通常はブラウザ版を利用すれば良いが、Google Colaboratoryでも利用可能である。

https://dfast.ddbj.nig.ac.jp/

その利用方法を記述する。
出力ファイルが大きいため、Google Drive上に目的のファイルを保存し、Google drive上に出力することを推奨する。

DFASTのインストール

condaを利用してインストールすると簡便で良い。
https://anaconda.org/bioconda/dfast

最初のセルに以下のコードをコピーし実行する。
“`
#@title installing miniconda and dfast
%%bash
MINICONDA_INSTALLER_SCRIPT=Miniconda3-4.5.4-Linux-x86_64.sh
MINI

元記事を表示

ABC 269 回答メモ

0.はじめに
 ABCの参加履歴とその時の所感を個人的にまとめたメモです。

1.A問題
 4つの数字をmapで受け取って計算しながらアウトプット。
 文字列は、問題文からコピペすると後ろに半角スペースがつくからそこは注意。
https://atcoder.jp/contests/abc269/submissions/34921671

2.B問題
 なかなかてこずった問題。
 条件から高々100マスの走査×2なので、時短の工夫は排除

 縦横方向それぞれのチェックで、”#”が初めに出てくるアドレスと
 ”#”が初めに出てきた後”.”が初めに出てくるアドレス-1で
 abcdを求める。

 縦横がごっちゃになってしまい、求める順番がcd→abとなってしまった。

 テストの結果、上記方法だと10マス目が#だった場合に判定できないことが
 分かり、10マス目が”#”だった場合の判断も追加して合格
https://atcoder.jp/contests/abc269/submissions/34937220

3.C問題
 最初見たときは難解で、D問題移行に逃げようと思ったが
 そっちも難

元記事を表示

テトリスを題材にpythonを学べるツールを作成してみた話2

### 目次
– 自己紹介
– 取り組み背景
– 取り組み内容
– 動かしてみた様子
– 今後の課題

### 自己紹介
・ハンドルネーム: @seigot
・関西在住の社会人
・python歴:3年〜ほど
・Qiita: https://qiita.com/seigot
・https://github.com

・前回: [Qiita記事 テトリスを題材にpythonを学べるツールを作成してみた話](https://qiita.com/seigot/items/0b42a807217dbe636226)
・今回: [Qiita記事 テトリスを題材にpythonを学べるツールを作成してみた話2](https://qiita.com/seigot/items/0b42a807217dbe636226)

### 取り組み背景(再)
・本業でpythonを使用する機会がない人からするとなかなか学ぶきっかけがない。
・文法を学ぶだけでは使用イメージが湧かず挫折しがちである
・しかし、アプリ開発や競プロ等をいきなり始めるのはハードルが高いと感じる

・刺激を受けた

元記事を表示

SlackとGCP連携するときに3秒以内にレスポンスが帰らないとTimeoutする問題の回避策

# はじめに

日頃は描画周りでShader書いたりサウンドプログラム書いたり敵のAI作ったり
マルチプレイのネットワーク基盤整えたりしているUnityエンジニアのCovaです.

今回は業務中にSlackとクラウド環境で色々処理を行わせたい時に重い処理を行うと
強制的にSlack側でタイムアウトになる問題に遭遇したのでその回避方法を掲載しておきます

# TL;DR
Slack → CloudFunction と連携して動かす時に重い処理(DB操作や非同期処理など) をするときは重い処理を `Cloud Pub/Sub` 経由で `別のCloudFunction` を発火させてそちらで対応しよう

# 経緯
業務で Slack とCloudFunction を連携して SlackのBOTメンションや スラッシュコマンドをトリガーに色々処理をサーバレスな仕組みで構築していたところ、このようなエラーに遭遇しました.
![timeout.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/65257/fd6e

元記事を表示

セルフブランディングで決めたい3つのこと(具体例あり)

## これを書いている人は誰か?

– みねぎしれい

エンジニア6年目 / Python Django Docker Javascript SQL / 人材関連企業の社内SE / みねぎしれい(minegishirei) / vim練習中です。

https://www.google.com/search?q=みねぎしれい

https://pm.short-tips.info/who/self_produce.md

ブランドとしては正直半人前もいいところですがそれでも誰かのためになればと思います。

## 参考情報

https://qiita.com/YumaInaura/items/76ce5f63a47e44f0193b

@YumaInaura さんの記事を参考にしました。

## セルフブランディングとは何か

そもそもセルフブランディングを定義は人や本によってまちまちなのですが、
ここでは**その人やものにまつわるイメージの全体**と定義することにします。

つまり

> 女子A「山田君って足が速いよね~」

とか

> 女子B「無色たろうさんって関数型プロ

元記事を表示

【競プロ典型90問】010 Score Sum Queries をわかりやすく解説したい【Python】

# この問題から得られる学び
* 何度も入力データを初めから見る処理になりそうなときは前処理を考える
* l番目からr番目みたいにある区間の和を求めるなら累積和の処理がおすすめかも

# 010 Score Sum Queries
(問題ページはこちら >>> [010 – Score Sum Queries(★2)](https://atcoder.jp/contests/typical90/tasks/typical90_j “010 – Score Sum Queries(★2)”))
(公式解説はこちら >>> [010 – 公式解説](https://twitter.com/e869120/status/1380652465834532865 “解説ツイート”))
>ABC 大学には N 人の一年生が在籍しています。クラスは 2 つあり、学籍番号 i 番の生徒のクラスは Ci組です。今日は期末試験が返却され、学籍番号 i 番の生徒の点数は Pi点でした。以下の形式の質問が Q 個与えられます。j=1,2,…,Q それぞれについて答えてください。
[query = lからr番ま

元記事を表示

Python,Ruby,PHP,Java,JavaScript,Perlのスコープの比較

Qiita > プログラミング言語の比較

Python,Ruby,PHP,Java,JavaScript,Perlのスコープの比較

# Python

https://qiita.com/msssgur/items/12992fc816e6adf32cff

# Ruby

https://qiita.com/EZ_Denta/items/6489039212e21d4fc49f

# PHP

https://qiita.com/hikaru_/items/4cc7b616aa61868cdcdd

# Java

https://qiita.com/gatchan03/items/e8eecf468b7dab960198

# JavaScript

https://qiita.com/higa02/items/a7a0a1d96d1d67a7c88b

# Perl

https://perlzemi.com/blog/2011012

元記事を表示

Python get filename from path

“`Python
import os
os.path.basename(filePath)
“`

元記事を表示

MacにDeeplabcutがインストールできない。

# 環境
macOS Monterey
pyenv
virtualenv
wxPython 4.0.7
Deeplabcut 2.2.2

# エラー
当然公式ドキュメントに従ってコマンドを実行する。

https://deeplabcut.github.io/DeepLabCut/docs/installation.html

で、
“`
This program needs access to the screen. Please run with a
Framework build of python, and only when you are logged in
on the main display of your Mac.
“`
これ。
何やってもこれ。

# 原因
wxPythonはframework buildのPythonが必要らしい。
当然CUIのDeeplabcutも試した。でもラベリングするのにGUIの環境が必要。
つまり、どう足掻いてもwxPythonと向き合わないといけない。
# 解決
正直色々やって何が正解かわからないが
“`
$ conda in

元記事を表示

ffmpegを利用するdiscord botの運用でRaliwayを試してみた話

# はじめに
今更の話ではあるのですが、HerokuのHobby Plan, つまり無料Planが2022年9月28日に終了します。

> Students and Nonprofit Program
We appreciate Heroku’s legacy as a learning platform. Many students have their first experience with deploying an application into the wild on Heroku. Salesforce is committed to providing students with the resources and experiences they need to realize their potential. We will be announcing more on our student program at Dreamforce. For our nonprofit community, we are working closely with our non

元記事を表示

SettingWithCopyWarning:について調べた。

# SettingWithCopyWarning:ってのをよく見かけるので調べました。

 こちらの記事をご覧いただきありがとうございます。
 機械学習を始めておよそ3カ月の私が、データをこねくり回すときにやたら出てくる「SettingWithCopyWarning:」ってやつが気になったので調べました。
 自分が調べたことを後で確認するために記事を書きますが、ご覧いただいた皆様にも学びがあれば幸いです。もしくは内容に間違いなどあればぜひご指摘ください。私の勉強になります。

## どんな警告?
 警告を再現します。検証用の適当なデータを用意します。
“`python:検証用データ生成
a = np.arange(100).reshape(10,10)
df = pd.DataFrame(a)
df.columns = [‘a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’i’,’j’]
“`
__生成されるデータ__
![サンプルデータ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/

元記事を表示

OTHERカテゴリの最新記事