失敗談 技術

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で解決できるのかが気になったので試してみました。 非同期問題 …

リモート実家帰りしてみる

このご時世、実家には直接帰れないけど、1月には一応実家帰り的な感じでリモート実家帰りをしようかと思いました。 リモートは大変。。 一応実家には自分で設置したインターネットや無線LANがあるので、Zoo …

gradleのcommandLineでリダイレクト

gradleというビルドツールがあります。なぜかRPMを作成するのに使ってます。Ansibleも使ってるんですがね。。 それはともかく、ここの通りなのですが、例えばls -lRの出力を、プロジェクトデ …

PythonでPKCS#12を使用して暗号/復号する

1. はじめに 仕事でVPN関係のシステム開発をすることになりました。まずは暗号機能の基本を思い出すため、Pythonで、PKCS#12の公開鍵で暗号、秘密鍵で復号するプログラムを作ってみようと思いま …

Djangoアプリサンプル – 画像ファイルアップロード + 顔モザイク(画像アップロード編)

仕事で使用している、Djangoについて、サンプルを作成してみようと思います。ここでは、画像ファイルのアップロードと顔モザイクを行うwebアプリを作成してみようと思います。 この記事ではファイルアップ …

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