2019年6月2日日曜日

開発環境

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング (Al Sweigart(著)、相川 愛三(翻訳)、オライリージャパン)の第Ⅱ部(処理の自動化)、8章(ファイルの読み書き)、8.10(演習プロジェクト)、8.10.1(マルチクリップボードを拡張する)の解答を求めてみる。

コード

Python 3

#!/usr/bin/env python3
import sys
import shelve
import pyperclip

with shelve.open('mcb') as shelf:
    n = len(sys.argv)
    if n == 3:
        cmd = sys.argv[1].lower()
        key = sys.argv[2].lower()
        if cmd == 'save':
            shelf[key] = pyperclip.paste()
        elif cmd == 'delete':
            if key == 'all':
                shelf.clear()
            else:
                if key in shelf:
                    del shelf[key]
    elif n == 2:
        argv1 = sys.argv[1].lower()
        if argv1 == 'list':
            pyperclip.copy(str(list(shelf.keys())))
        elif argv1 in shelf:
            pyperclip.copy(shelf[argv1])

入出力結果(Bash、cmd.exe(コマンドプロンプト)、Terminal、Jupyter(IPython))

C:\Users\...>py sample1.py

C:\Users\...>py sample1.py save key1

C:\Users\...>py sample1.py list

C:\Users\...>py sample1.py delete key1

C:\Users\...>py sample1.py list

C:\Users\...>py sample1.py save k1

C:\Users\...>py sample1.py k1

C:\Users\...>py sample1.py delete all

C:\Users\...>

0 コメント:

コメントを投稿