開発環境
- OS X Mavericks - Apple(OS)
- Emacs (CUI)、BBEdit - Bare Bones Software, Inc. (GUI) (Text Editor)
- Python (プログラミング言語)
初めてのPerl 第6版 (Randal L. Schwartz (著)、brian d foy (著)、Tom Phoenix (著)、近藤 嘉雪 (翻訳)、オライリージャパン)の15章(スマートマッチとgiven-when)の15.6(練習問題)3.をPythonで考えてみる。
15.6(練習問題)3.
コード(BBEdit, Emacs)
sample3.py
#!/usr/bin/env python3
#-*- coding: utf-8 -*-
import os
import sys
import glob
print('コマンドライン引数(sys.argv[1:])')
for arg in sys.argv[1:]:
print(arg, end=': ')
if os.path.exists(arg):
result = ''
if os.access(arg, mode=os.R_OK):
result += '読み出し可能 '
if os.access(arg, mode=os.W_OK):
result += '書き込み可能 '
if os.access(arg, mode=os.X_OK):
result += '実行可能'
print(result)
else:
print('存在しません。')
print('glob module')
for filename in glob.glob('*'):
print(filename, end=': ')
result = ''
if os.access(filename, mode=os.R_OK):
result += '読み出し可能 '
if os.access(filename, mode=os.W_OK):
result += '書き込み可能 '
if os.access(filename, mode=os.X_OK):
result += '実行可能'
print(result)
入出力結果(Terminal, IPython)
$ mkdir dir $ touch temp.txt $ chmod 0 temp.txt $ ./sample3.py dir temp.txt sample3.py abcde $ ./sample3.py dir temp.txt sample3.py abcde コマンドライン引数(sys.argv[1:]) dir: 読み出し可能 書き込み可能 実行可能 temp.txt: sample3.py: 読み出し可能 書き込み可能 実行可能 abcde: 存在しません。 glob module __pycache__: 読み出し可能 書き込み可能 実行可能 dir: 読み出し可能 書き込み可能 実行可能 fizz_buzz.py: 読み出し可能 書き込み可能 実行可能 fizz_buzz.py~: 読み出し可能 書き込み可能 実行可能 sample1.py: 読み出し可能 書き込み可能 実行可能 sample1.py~: 読み出し可能 書き込み可能 sample3.py: 読み出し可能 書き込み可能 実行可能 sample3.py~: 読み出し可能 書き込み可能 実行可能 temp.txt: $
0 コメント:
コメントを投稿