関数をよく忘れるので覚書き。
配列の逆順
l = [0, 1, 2, 3, 4]
for i in (reversed(l)):
print(i)
ファイルの読み書き
s = 'New file'
with open(path_w, mode='w') as f:
f.write(s)
with open(path_w) as f:
print(f.read())
URLエンコード
urllib.parse.urlparse("http://example.com/example.html?foo=bar&hoge=fuga")
urllib.parse.parse_qs("foo=bar&hoge=fuga")
日付のフォーマット
日付フォーマット(datetime⇔文字列) | Python Snippets
import datetime
now = datetime.datetime.now()
"{0:%Y-%m-%d %H:%M:%S}".format(now)
'2012-10-07 08:15:03'
文字列の検索
if ('<strong' in "test'") is False:
文字列の置換
Pythonで文字列を置換する:replace(), re.sub() | UX MILK
置換後の文字列 = 対象の文字列.replace(置換される文字列, 置換する文字列 [, 置換回数])
dst = src.replace("b", "B", 1)
置換後の文字列 = re.sub(正規表現, 置換する文字列, 置換される文字列 [, 置換回数])
import re
result = re.sub(r'[a-z]+', "0", text)
タグの除去
import re
re.sub("<.*?>","",【文字列】)
パスの取得
import os
filepath = './dir/subdir/filename.txt'
basename = os.path.basename(file)
print(basename)
# filename.txt
dirname = os.path.dirname(file)
print(dirname)
# ./dir/subdir
ラジオボタンの選択(with Selenium)
driver.find_element_by_xpath("//input[@type='radio'][@value='1']").click()
チェックボックスのチェック(with Selenium)
driver.find_element_by_xpath("//input[@id='order_terms']").click()
タイマーをセット
・一定時間後
def timer():
timeStr = datetime.now().strftime("%H:%M:%S")
print(timeStr)
t = threading.Timer(10, timer)
t.start()
・一定間隔で繰り返し
def timer():
global t
timeStr = datetime.now().strftime("%H:%M:%S")
print(timeStr)
t = threading.Timer(1, timer)
t.start()
t=threading.Thread(target=timer)
t.start()
pprint
php でいうと var_dump() みたいなもの
from pprint import pprint
pprint({})
as を付けると
from pprint import pprint as pp
pp({})
とも書ける
並び替え
dict.sort(key=lambda x:(x['column01'],x['column02']))
dict2 = dict.sorted(key=lambda x:(x['column01'],x['column02']))
lambda式
無名関数みたいなものかな?
payment2 = (lambda price,tax:price + (price * tax))(100,0.08)
辞書型の並び替えと合わせると
dict.sort(key=lambda x:(x['column01'],x['column02']))
JSON
JSON を扱う時に、「json」って変数名をつけると、ややこしいことになりますよ。
data = {"command": "googlehome",'content':msg}
jsonstr = json.dumps(data, ensure_ascii=False)
payload = {'json': jsonstr}
headers = {"content-type": "application/json"}
r = requests.put(url, data=json.dumps(payload), headers=headers)
ランダムな数字
import random
print(list(range(10)))
# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(random.randrange(10))
# 5
print(list(range(10, 20, 2)))
# [10, 12, 14, 16, 18]
print(random.randrange(10, 20, 2))
# 18
print(random.randint(50, 100))
# print(random.randrange(50, 101))
# 74