【Substance Designer】pythonコードメモ
shamimatsu
三味松ブログ
python3.7を使用
パーフォースなどバージョン管理ソフトを使っているとチェックアウトし忘れで読み取り専用にチェックが入っていたりなど、読み取り専用がどうかの確認をしたいケースは多いと思います。よく使うけど忘れがちなので残しておこうと思いました。
例では読み取り専用のチェックが入っている check_ON.txt と
入っていない check_OFF.txt を用意
import os
readonly_on = 'D:/python/check_ON.txt'
readonly_off = 'D:/python/check_OFF.txt'
r_on = os.access(readonly_on, os.W_OK)
r_off = os.access(readonly_off, os.W_OK)
print(r_on)
# False
print(r_off)
# True
読み取り専用のチェックが入っていると False(書き込みできない)と返ってきます。
チェックが入っていないと True(書き込み出来る)と返ってきます。
test.txtを新たに作って確認します。
import os
test_file = 'D:/python/test.txt'
r = os.access(test_file, os.W_OK)
if r == True:
print('書き込み出来ます')
elif r == False:
print('読み取り専用ONになっているため処理しない')
新規作成ファイルだと読み取り専用にチェックは入っていないため「書き込み出来ます」が返ってきます。
読み取り専用にチェックを入れてから実行すると「読み取り専用ONになっているため処理しない」と返ってきます。
if notを使った確認方法もあるようですが、if notは少し考え方が難しいので今回はこの方法をとっています。