失敗談 技術

Pythonでの勘違い(if A:)

投稿日:

勘違い

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

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

結果は以下になります。

empty!

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

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

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

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

思い込みは怖い

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

-失敗談, 技術

執筆者:

関連記事

Python3でMongoDBを使ってみる(MongoEngine)

仕事している過程で、ふと疑問に思うことがありました。非同期についてです。 非同期問題を解決する方法はたくさんあると思いますが、MongoDBで解決できるのかが気になったので試してみました。 非同期問題 …

Pipenvでライブラリ(*.whl)をキャッシュする方法

仕事でWebアプリケーションを作成した場合、ガンガンとライブラリのバージョンを上げたりはしない場合があります。 そして、長期間放置されるタイプのWebアプリケーションの場合、使用しているライブラリが、 …

言語別ログイン機能パスワード保存処理方針

ちょっと前に、ログイン機能を作成した際、パスワードを暗号化するか、という議論を目にしたことがありました。 昔だと、「パスワードを暗号化しない」方で実装していましたが、最近はセキュリティが当たり前になっ …

Thunderbird プラグイン WebExtensions版開発方法を調べた

初めに 最近のメールは、中身だけ見てもスパムかどうかわからないぐらい、精巧にできてます。 一方、各プロバイダでは対応ができていることも多いです。例えば、私はメールはOCNなのですが、OCNは&#822 …

CentOS7 + Django2.2 + uwsgi + nginx 連携方法

Djangoとnginx連携方法 以前はApache経由で連携しましたが、今回はnginxと連携する方法を記述します。 環境 設定した環境は以下です。 OS: CentOS7Python3.6.8 ( …

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