失敗談 技術

Pythonでの勘違い(if A:)

投稿日:

勘違い

小ネタです。
Pythonでは、以下のように書くことができます。

a = []
if a:
  print("not empty!")
else:
  print("empty!")

結果は以下になります。

empty!

そう言われれば、そうなんだが、、

私はaというのがNoneか、”空文字列”の時に「だけ」偽になると思いこんでた。。
つまり配列の場合は、、考えてなかった。。
ちょっと考えれば分かることだったのに。

なのでaが配列の場合は、以下の感じで書いてた気がする。

if len(a) > 0:
    print("not empty!")

思い込みは怖い

気を付けよう。と思ってもきっといろいろ思い込んでる。。

-失敗談, 技術

執筆者:

関連記事

Nuxt.js – CRUDアプリケーションのフォーム/一覧を作成する

前回で作ったAPIのフロントエンドアプリケーションを作ろうと思います。 どういうアプリ? サンプルとして作ったAPIが住所録的だったので、住所録を作りました。 以下の機能があります。 登録(確認付き) …

暗号モードによる処理時間の違いを測定してみた

はじめに 前回、AESで暗号化する実装をしてみた際、知らない暗号モードが増えたなと思いました。 なので、どの暗号モードを使用すべきかの、判定材料の一つとして、代表的な暗号モードの処理速度を簡単に計って …

pipenv + Apache + Django起動設定

仕事でwebアプリケーションを作成しています。 Djangoで作成し、webサーバをApache、環境をpipenvで設定したpython3環境上で動かす予定です。 Apacheが起動するまでに、苦労 …

Djangoのurls.pyにはまった。。

けっこうハマった。。 Django 2.2.4の話。以下のエラーを修正するのに、とっても時間がかかった。 django.urls.exceptions.NoReverseMatch: Reverse …

PythonでAESを使用して暗号/復号する

1.つづき Pythonで、PKCS#12の公開鍵で暗号、秘密鍵で復号するプログラムの続きです。 今回はAESで暗号化/復号を行い、通信しながらRSA暗号/復号,AES暗号/復号を組み合わせたいと思い …

google オプトアウト Click here to opt-out.