- 1. Pythonで強力なパスワードを作る
- 2. 【Python】emojiモジュールについて
- 3. 1から123の約数の和 python
- 4. leetcord python3 9. Palindrome Number(回文数)
- 5. Python で半角スペース区切りの整数を受け取るときの典型的な書き方
- 6. python3 多重ループ(記録)
- 7. pythonフラグ管理 (記録)
- 8. OpenCV(python)をLambdaで動かす
- 9. LeetCord(記録)python3
- 10. Python 3 UTCエポックから日本標準時変換
- 11. python3 記録
- 12. pythonのdataclassまとめ
- 13. python3 例外処理 (記録)
- 14. seabornのload_datasetを認証付きproxy環境下で読み込む場合
- 15. AtCoder参加記録No.4ーABC216
- 16. ElementTreeでxml整形
- 17. Python3 について strip()
- 18. Column order changes results of XGBoost model prediction
- 19. 言語処理100本ノック 2020をやってみる 第三章:正規表現 前編
- 20. Aidemy Premium Planを受講して(振り返り)
Pythonで強力なパスワードを作る
Pythonで強力なパスワードを作る方法を簡単に解説した。
パスワードの文字数を入力すれば複雑な文字列を生成できる関数を作って実装する。自力でランダムに文字を組み合わせてパスワードを生成することもできるが、機会で無作為に作成したほうがはるかに効率的だろう。
# 半角英数字だけのパスワードを生成
Pythonなら次の10行近くのコードだけで複雑なパスワードを簡単に生成できる。
“`python
import secrets
import stringdef get_random_password_string(length):
pass_chars = string.ascii_letters + string.digits
password = ”.join(secrets.choice(pass_chars) for x in range(length))
return passwordprint(get_random_password_string(10))
print(get_random_password_string(13))
p
【Python】emojiモジュールについて
##インストール
“`
pip install emoji
“`##動作環境
“`
python3 –version
# Python 3.9.6pip3 show emoji
# Version: 1.4.2
“`##絵文字の正規表現の取得 – get_emoji_regexp()
get_emoji_regexp()メソッドで絵文字判別のための正規表現を取得することができます。
これを利用することで文章中の?みたいな絵文字を消し去ることができます。“`python
import re
import emojifaces = ‘???ლ(´ڡ`ლ)???( ◜ω◝ )???’
print(re.sub(emoji.get_emoji_regexp(), ”, faces))# ლ(´ڡ`ლ)( ◜ω◝ )
“`YouTubeやTwitterなどから取得してきたテキストを色々いじくる前の処理として使うことができます。
##文字列内の絵文字の個数をカウント – emoji_count()
“`python
print(emoji.
1から123の約数の和 python
####numを1から36までの自然数で割り算し、余りが0の場合に出力していきます。
“`
num = 123
a = []
for i in range(1, num+1): #1~123まで
if num % i == 0:
a.append(i) #配列に入れるb = sum(a) #配列の総和
print(b)
“`
leetcord python3 9. Palindrome Number(回文数)
###整数xが与えられた場合、xが回文整数の場合はtrueを返します。という問題
・回文数 「しんぶんし」のようにさかさに読んでも同じ文になる文を回分といいますが、12321のように逆さから読んでも同じ数になる数を回文数といいます。
####問題(翻訳)
整数は、前方と後方で同じように読み取られる場合、回文です。 たとえば、121は回文ですが、123はそうではありません。
例1:入力:x = 121
出力:true
例2:入力:x = -121
出力:false
説明:左から右に、-121と表示されます。 右から左に、121-になります。 したがって、それは回文ではありません。
例3:入力:x = 10
出力:false
説明:01を右から左に読み取ります。 したがって、それは回文ではありません。
例4:入力:x = -101
出力:false制約:
-231 <= x <= 231-1 ####回答 文字を反対にしてもマイナスじゃないかを判定するということ。 一番重要なのは、[::-1]で後ろからに変換してくれる。 ``` class Soluti
Python で半角スペース区切りの整数を受け取るときの典型的な書き方
#### Python で半角スペース区切りの整数を受け取るときの典型的な書き方
“`
N, M, K = map(int, input().split())
“`
・Python ではいくつかの変数を、リストを使ってまとめて初期化することができます。今回のように N, M, K = hoge と書くと、代入されるのが長さ 3 のリストであるとき、そのリストの 0, 1, 2 番目の要素がそれぞれ N, M, K に代入されます。・N, M, K = map(int, input().split()) は Python で半角スペース区切りの整数を受け取るときの典型的な書き方のひとつです。右辺では input().split() の各要素に int関数 を適用しています。
“`
N, M, K = map(int, input().split())for i in range(N):
a = [int(j) for j in input().split()]
ans = 0
for j in range(M):
if a[j]
python3 多重ループ(記録)
##多重ループ
Cの配列の中からsの中で該当するものを判定する。
今回はforの中にforがあることと、inで文字列を確認することがポイント。“`
m = int(input())#[“”]文字列の配列を作成するため
c = [“”]*mfor i in range(m):
c[i] = input()n = int(input())
s = [“”]*n
for l in range(n):
s[l] = input()for i in range(m):
for l in range(n):
if c[i] in s[l]:
print(“YES”)
else:
print(“NO”)
“`入力例2
2
c
d
2
cat
dog出力例2
YES
NO
NO
pythonフラグ管理 (記録)
##Python3の場合
“`python
n = int(input())flag = False
for i in range(n):
a = int(input())
if a == 7:
flag = True
“`
まずは flag を False にしておき、a_1, …, a_n の中に 7 が見つかったときにはこれに True を再代入します。こうすることで、7 がひとつでもあった場合には最終的に flag の値は True となり、そうでない場合には False となります。“`
if flag:
print(“YES”)
else:
print(“NO”)
“`flag の値に応じて条件分岐し、flag が True のときには YES を、そうでないときには NO を出力するようにすれば OK です。なお、if文の条件文はそのブール値だけが見られるので、if flag == True: などとせずとも、 if flag: と書けば「flag が True のとき」という意味になります。
OpenCV(python)をLambdaで動かす
すでに他の人が記事で書いているのですが、そもそもSAMについてよくわかっていなかったので自分の備忘録としてリンク集貼っておきます。
https://note.com/rooxim/n/n8631eb634167
AWSのインストール系リンク
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2-mac.html
https://docs.aws.amazon.com/ja_jp/serverless-application-model/latest/developerguide/serverless-sam-cli-install-mac.html
そもそもSAM使ってDeployすることを丁寧に書いてくれている記事
http://hack-note.com/infra/aws-sam-lambda-deploy/
LeetCord(記録)python3
##1. Two Sum
“`
nums = [2,7,11,15]
target = 9
result = []
for i in range(len(nums)):
for j in range(i,len(nums)):
if nums[i] + nums[j] == target:
result = [i, j]
break;print(result)
“`##7. Reverse Integer
符号付き32ビット整数xが与えられた場合、桁を逆にしてxを返します。 xを逆にすると、値が符号付き32ビット整数の範囲[-231、231-1]の外に出る場合は、0を返します。環境では64ビット整数(符号付きまたは符号なし)を格納できないと想定します。
“`python
x = 123s = (x > 0) – (x < 0) #1(true)-0(false) r = int(str(x*s)[::-1]) y = s*r * (r < 2**31) #321*1(true) print (s)#1 print (r)#
Python 3 UTCエポックから日本標準時変換
とある通信機器からUTCエポックを受信する機会があった。Python3での日本標準時への変換方法をPythonライブラリーリファレンスで調べた。
# 方法
変換方法は1つではないが、`datetime` モジュールとサードパーティーライブラリー `dateutil` パッケージを使用する方法がある。 `dateutil` は標準では無いので実行環境にない場合はインストールが必要。# `dateutil` パッケージのインストールコマンド
“`
pip install python-dateutil
“`# 変換コード
“`
from datetime import datetime
from dateutil import tzutc_epoch = 1630557969 # UTCエポックの一例
time_zone = tz.gettz(‘Asia/Tokyo’)
jst_time = datetime.fromtimestamp(utc_epoch, time_zone)
“`UTCエポックは少数部も含むが、ここでは`etc_epoch` に整数部だ
python3 記録
##配列から数値に変換
“`python
n = int(input())a = input().split()
print(a)
for i in range(n):
print(a[i])“`
“`
print(a[i])
“`
これでリストから対象の番号を参照して1つずつ表示してくれる##任意の文字列を含むか判定: in演算子
“`
a = input()
b = input()if a in b:
print(“YES”)
else:
print(“NO”)
“`
pythonのdataclassまとめ
# はじめに
dataclassの知見が溜まったので、書きたいと思います。
# dataclassとは
通常の場合
“`python
class DataClass:
def __init__(self, name, num):
self.name = name
self.num = numdc = DataClass(‘tom’,3)
print(f’私の名前は{dc.name}、IDは{dc.num}です。’)
“`“`console
私の名前はtom、IDは3です。
“`dataclassの場合
“`python
from dataclasses import dataclass@dataclass
class DataClass:
name: str
num: intdc = DataClass(‘tom’,3)
print(f’私の名前は{dc.name}、IDは{dc.num}です。’)
“`“`console
私の名前はtom、IDは3で
python3 例外処理 (記録)
“`python
class MyExcepiton(Exception):
passdef div(a,b):
try:
if (b < 0): raise MyExcepiton("not minus") print(a/b) except ZeroDivisionError: print("not by zero!") except MyExcepiton as e: print(e) else: print("no exception!") finally: print("計算が終了しました") div(10,-2) ``` https://uxmilk.jp/39845
seabornのload_datasetを認証付きproxy環境下で読み込む場合
## はじめに
seabornには、機械学習や統計分析で有名なサンプルデータを簡単にロードするスクリプトが用意されていますが、proxy環境下ではうまく動かず、いちいちgithub等からダウンロードして手動で読み込ませなければならない場合があり、その時点で挫折してしまいそうになります。
もっと簡単にproxyを突破してダウンロードできるようにならないかと思い調べましたが、簡単に見つからなかったので自分のメモとして記載します。(こんなのにこまるようなヤツは自分しかいないから情報を見つけられなかっただけかもしれませんが…## 解決方法
以下を冒頭に入れるだけです“`py
import urllib.request
proxy = urllib.request.ProxyHandler(
{‘http’: “http://: @ : “,
‘https’: “http://: @ : “})
opener = urllib.reque
AtCoder参加記録No.4ーABC216
#ABC216
今回参加したABC216についての参加記録2021年8月29日(日)のAtCoder Beginner Contest 216でした。
https://atcoder.jp/contests/abc216
##結果
A,B問題を正解
レート:42→49 (+7) Highest!
順位:6145/ 7377
時間: A問題16:40 B問題25:41
パフォーマンス:101##詳細
###A問題
[問題](https://atcoder.jp/contests/abc216/tasks/abc216_a)
今まで普通に解けていたので慢心したのが仇となった
提出コード(RE)“`python:A問題_1.py
S=str(input())
ans=[]
Y=0
for i in range(4):
if S[i]==’.’:
Y=int(S[i+1])if 0<=Y<=2: V='+' elif 3<=Y<=6: V='' elif 7<=Y<=9: V='+'
ElementTreeでxml整形
“`python
import xml.etree.ElementTree as ETtree = ET.parse(‘input.xml’)
ET.indent(tree, space=’ ‘)
tree.write(‘output.xml’, encoding=’UTF-8′, xml_declaration=True)
“`python3.9からElementTreeにindent関数が追加されている
https://docs.python.org/ja/3/library/xml.etree.elementtree.html#xml.etree.ElementTree.indent
Python3 について strip()
#strip()について
括弧内の文字列を削除してくれる。何も入れないと空白を削除してくれる“`
text=[‘あ い う え お’]
text.strip()
print(text)‘あいうえお’
“`#if name ==’__main__’:について
pythonをターミナルで呼び出す時、import 〇〇と呼び出すとそこで実行されてしまう。
それを防ぐために、nameで呼び出されても、mainに変換して実行しないようにしている。
このサイトがすごくわかりやすい
あと、ifの後に半角スペース入れ忘れてエラーになることが多かったので、
皆さんも気をつけてください。“`
if __name__ == ‘__main__’:
main()
“`
Column order changes results of XGBoost model prediction
In this short note I would like to share something I have myself learned only recently. Although this will be familiar to those
of you who are expert ML practitioners, to me this fact was highly counter-intuitive and costed my a few hours of debugging recently.
Therefore, I write this article more as a memo for myself.So, here is the deal: **column order changes results of XGBoost prediction**. Let me explain what I mean with an example (the notebook is available at [Kaggle](https://www.kaggle
言語処理100本ノック 2020をやってみる 第三章:正規表現 前編
#目的
下記のウェブサイトの言語処理100本ノックを行う.https://nlp100.github.io/ja/
第一章
https://qiita.com/t-baba-11/items/f230136058a695c7c7d1
#第3章:正規表現
第二章はプログラムではないため割愛.プログラミング言語はPythonを用いる.
jupyter notebookを使用しているので,出力にprint文が必要な場合は適宜追加する.データのダウンロード
“`.py
import requests
url=’https://nlp100.github.io/data/jawiki-country.json.gz’
filename=’jawiki-country.json.gz’
urldata = requests.get(url).content
with open(filename ,mode=’wb’) as f:
f.write(urldata)
“`###20. JSONデータの読み込み
Wikipedia記事のJSONファイルを読み込み,
Aidemy Premium Planを受講して(振り返り)
###はじめに
Aidemy Premium Planを受講してできるようになったことを紹介したいと思います。
プログラミングに関心を持ち始めた方の参考になればと思い、ブログを書きました。
全くの初心者がどのくらいできるようになるのかの参考になれば嬉しいです。ただ、実際のコードを書いたことがない方には、自分の書いたコードの詳細を理解するのは
難しいと思うので、始めようと思っている方はこういうこともできるのかという
なんとなくのイメージをついていただければ幸いです。###自己紹介
自動車部品メーカーのエンジニアをしてます。
(新入社員から今の会社に勤めており入社8年目になります。)
業務では必要なかったのですが、将来的にプログラミングは必須のスキルになると考え、
Python言語での機械学習の勉強を始めました。###プログラミングの学習経歴
2021年4月〜 ProgateでプログラミングのWeb開発を学び修了書を受領
2021年5月〜Aidemy Premium Planでデータ分析6ヶ月コースを受講しました。###学習内容(Aidemy)
・Python入門
・Nu