dak ブログ

python、rubyなどのプログラミング、MySQL、サーバーの設定などの備忘録。レゴの写真も。

GCP の LB でリダイレクト

2024-10-17 23:39:39 | GCP

GCP の LB でのリダイレクトの設定方法のメモ。

https://aaa.abc.com/ 配下のページを https://www.abc.com/aaa/ にリダイレクトする設定例。

aaa.abc.com の LB の設定の pathRules: に以下を追記

- paths:
  - /*
  urlRedirect:
    hostRedirect: www.abc.com
    prefixRedirect: /aaa/

python で辞書から指定の項目のみの辞書を作成

2024-10-17 22:43:20 | python

python で辞書から指定の項目のみの辞書を作成する方法のメモ。

> a = {'a': 0, 'b': 1, 'c': 2, 'd': 3, 'e': 4}
> print(a)
{'a': 0, 'b': 1, 'c': 2, 'd': 3, 'e': 4}

> b = {k: a[k] for k in ['a', 'b', 'c']}
> print(b)
{'a': 0, 'b': 1, 'c': 2}

jq コマンドで jsonl の要素の追加・削除

2024-10-11 09:45:37 | linux

jq コマンドで jsonl の要素を追加・追加する方法のメモ。

json データ

$ cat test1.jsonl

{"abc": "abc", "def": "def", "ghi": "ghi"}

要素の追加

以下で "jkl" に "abc" の値を追加します。

$ cat test1.jsonl | jq -c '. + {"jkl": .abc}'

{"abc":"abc","def":"def","ghi":"ghi","jkl":"abc"}

要素の削除

以下で "ghi" の要素を削除します。

$ cat test1.jsonl | jq -c 'del(.ghi)'

{"abc":"abc","def":"def"}

要素の追加・削除

| で連結することで追加、削除を1コマンドで実行します。

$  cat test1.jsonl | jq -c '. + {"jkl": .abc} | del(.ghi)'

{"abc":"abc","def":"def","jkl":"abc"}

python でクラス名、メンバ変数を参照

2024-10-06 14:44:09 | python

python でインスタンスのクラス名、メンバ変数を参照する方法のメモ。

インスタンスのクラス名は __class__.__name__ で参照でき、メンバ変数は __dict__ で参照できます。

class Class1:
    def __init__(self, num, str):
        self.num = num
        self.str = str


i1 = Class1('abc', 123)
i2 = Class1('def', 456)

# クラス名
print(i1.__class__.__name__)
print(i2.__class__.__name__)

# メンバ変数の値
print(i1.__dict__)
print(i2.__dict__)
■実行結果
Class1
Class1
{'num': 'abc', 'str': 123}
{'num': 'def', 'str': 456}

python で出力ストリームを flush する方法

2024-10-01 23:39:31 | python

python で出力ストリームを flush する方法のメモ

print() で flush=True を指定

print('Hello World!', flush=True)

sys.stdout.flush() を実行

print('Hello World!')
sys.stdout.flush()