牌語備忘録 -pygo

あくまでもメモです。なるべくオフィシャルの情報を参照してください。

牌語備忘録 -pygo

エフェクターボードを自作してみるメモ

前置き

エフェクターボードを作ってみたくてエフェクターを買い始めた感強いかも。我ながら順番逆だと思う。でも作ってみたかったんだもの。
ちなみにエフェクターはまだ2コしか持っってない。(増える予定たぶん)

とりあえずググって調べる

ググった画像や動画を流し見して、なんとなく木の板にマジックテープを貼るの良さそうな気がした。
既存の販売されてるエフェクターボードの寸法と所有するエフェクターの寸法を考慮。(未来の所有予定のやつも)
あと百均グッズでインテリア作る系とかも参考になったかも。

目分量で料理をする感覚でとりあえず材料を購入してみる

調べたものたちを脳みそに入れてかき混ぜてなんとなく完成形をイメージしておく。
とりあえず比較的シャレオツそうな材料ありそうなセリアで購入。

f:id:CortYuming:20200808111500j:plain

  • 板の裏側に貼るキズ防止的なやつ
  • 取っ手(必要かわからないけど便利かもと思ったから)
  • ネジ(取っ手に付属のやつ長すぎっぽかったから。)
  • ↑それでもネジが板を突き抜けた時に回避できそうなやつも別に購入

計550円くらいかな。

道具

道具は手持ちのやつ

  • カッター
  • カッターマット
  • 定規
  • プラスドライバー

くらいだったかな

組み立てる

取っ手を釣りつけてみたらネジが突き抜けた。 f:id:CortYuming:20200808112041j:plain

でも回避できそうなやつも買っといたのでそれで回避。ちょっとはみ出たけど裏側にキズ防止のやつを貼り付けるから大丈夫。

f:id:CortYuming:20200808111757j:plain f:id:CortYuming:20200808112134j:plain f:id:CortYuming:20200808112713j:plain いい感じ f:id:CortYuming:20200808113708j:plain 裏側に床にキズつかないようにするやつを貼り付ける。
ノープランだったから全面貼れる大きさなかった。見た目ひどい。でもまあ裏面はほぼ見ないから。

f:id:CortYuming:20200808113805j:plain

できた。
15分くらいで組み上がった。
けどここでマジックテープ買い忘れたことに気づいた...。

ホームセンターでマジックテープ購入して貼り付ける

メス1m,オス20cmで1356円
セリアで買った総額の倍くらいになったがまあしかたない。

f:id:CortYuming:20200808221851j:plain

このマジックテープを板に貼り付けるのに意外と時間かかった。 ちなみにマジックテープは板に貼る方がメスでエフェクター側はオス。(メスは輪になってる方、オスはフック的な引っかかりある方)

f:id:CortYuming:20200808224006j:plain

あとエフェクターによっては裏側がゴムでテープが貼り付けられないので、ネジ外して巻きつける感じにしてみた。

f:id:CortYuming:20200808231507j:plain

完成

f:id:CortYuming:20200808234914j:plain

悪くないかも。エフェクターの数が少なすぎてあれだけど。
これからパワーサプライとかエフェクターが2〜3個くらい増えれば見た目いい感じになりそうな気がする。

感想

思ってたより簡単に作れた。あと2000円弱という低価格ですんでよかった。
使い勝手は想定してなかったけど悪くなさそうというか意外といい感じかも。
ちなみにギター弾けないからなんとかしたい。

追記2020-08-11:パワーサプライ購入

f:id:CortYuming:20200812130509j:plain

電源まとめといた方がいいかなと思ってパワーサプライを購入。
小さくてよいんだけど安物だからか付属の電源アダプタだとノイズが大きいので、zoomの電源アダプタも購入。ノイズ問題解消された。

夜中にお酒飲みながらamazonとかで欲しいものを調べ回るとうっかりポチッとなしてしまってやばい。

追記2020-08-14:JOYO TREMOLO JF-09 購入

f:id:CortYuming:20200814120220j:plain

購入予定・欲しいものなど

Django で csv ダウンロード を utf8 の BOM 付きにするメモ

(django1.11, python3.7.x)

open() 使わずに HttpResponse でやる場合のやつ

import csv
import io
from django.http import HttpResponse

def some_view(request):
    # Create the HttpResponse object with the appropriate CSV header.
    response = HttpResponse(content_type='text/csv')
    response['Content-Disposition'] = 'attachment; filename="somefilename.csv"'

    sio = io.StringIO()
    writer = csv.writer(sio)

    writer.writerow(['First row', 'Foo', 'Bar', 'Baz'])
    writer.writerow(['Second row', 'A', 'B', 'C', '"Testing"', "Here's a quote"])

    response.write(sio.getvalue().encode('utf_8_sig'))
    return response

参考リンク

Pythonで小2算数のくり下がりのあるひき算のひっ算の問題を生成するメモ

(python3.7.x)

前置き

この動画のような問題をいくつか生成してみる


小2算数 くり下がりのあるひき算のひっ算

コード

雑に書いちゃったから後で見直すかも
ちなみに最大2桁

import random


def get_num():
    num_list = range(10)
    one1 = random.sample(num_list, 1)[0]
    one2 = random.sample(num_list[one1:], 1)[0]
    if one1 == one2 and 0 < one1:
        one1 -= 1
    elif one1 == one2 and len(num_list) > one1:
        one2 += 1
    return [one1, one2]


amount = 10
max_ten1 = 9
for _ in range(amount):
    one1, one2 = get_num()
    ten1 = random.sample(range(1, max_ten1), 1)[0]
    ten2 = 0
    if 1 < ten1 and ten1 < max_ten1:
        ten2 = random.sample(range(0, ten1), 1)[0]
    answer = (ten1 * 10 + one1) - (ten2 * 10 + one2)
    print('{}{}-{}{} = {}'.format(ten1, one1, ten2, one2, answer))

実行結果例

40-12 = 28
46-38 = 8
26-08 = 18
20-02 = 18
38-09 = 29
46-38 = 8
28-09 = 19
53-38 = 15
81-04 = 77
70-31 = 39

Pythonでランキングで同順位を考慮して順位を取得するメモ

(python3.7.x)

{id:score} の入った配列 id_score_listid:2 が score 降順で順位が何番めなのかを取得したいメモ

id_score_list = [{3: 180}, {5: 150}, {10: 150}, {1: 120}, {8: 120}, {9: 120}, {2: 110}, {7: 90}, {6: 70}, {4: 60}]
target_id = 2
ids = [list(d.items())[0][0] for d in id_score_list]
scores = [list(d.items())[0][1] for d in id_score_list]
target_index = ids.index(target_id)
print('total_count', len(scores))
print('target_id', target_id)
ranking = len(scores[:target_index]) + 1
print('ranking', ranking)
before_duplicate_ranking_count = len(set(scores[:target_index]))
print('before_duplicate_ranking_count', before_duplicate_ranking_count)
fix_ranking = before_duplicate_ranking_count + 1
print('fix_ranking', fix_ranking)

# total_count 10
# target_id 2
# ranking 7
# before_duplicate_ranking_count 3
# fix_ranking 4

id:2 のランキング7位だったが、同順位を考慮すると4位になった。

参考