zoukankan      html  css  js  c++  java
  • python文档注释参数获取

    1.docopt模块的用法

     1 # _*_ coding:utf-8 _*_
     2 
     3 
     4 '''命令行的火车票查看系统
     5 Usage:
     6     index [-gdtkz] <from> <to> <date>
     7     
     8 Options:
     9     -h,--help  显示帮助
    10     -g         高铁
    11     -d         动车
    12     -t         特快
    13     -k         快速
    14     -z         直达
    15 Example:
    16     index  上海  北京  2018-5-28
    17     
    18 
    19 
    20 '''
    21 
    22 
    23 
    24 from docopt import docopt
    25 
    26 def cli():
    27     arguments= docopt(__doc__)
    28     print(arguments)
    29 
    30 if __name__=='__main__':
    31     cli()

    注意:文档注释之前不能再有文档注释,不然会报类型错误

    输出结果

    2.处理命令行参数

    命令行参数存储在变量sys.argv中。sys.argv列表中的第一项总是一个字符串,它包含程序的文件名(‘pw.py’)第二项应该是第一个命令行参数。

    项目一:获取口令

    准备知识-----pyperclip模块

    >>> import pyperclip

    >>> pyperclip.copy('Hello world!')

    >>> pyperclip.paste()

    'Hello world!'

    当然,如果你的程序之外的某个程序改变了剪贴板的内容,paste()函数就会返 回它。

    准备知识-----命令行参数

    #! python3

    # pw.py - An insecure password locker program.

    PASSWORDS = {'email': 'F7minlBDDuvMJuxESSKHFhTxFtjVB6',

    'blog': 'VmALvQyKAxiVH5G8v01if1MLZF3sdt',

    'luggage': '12345'}

    import sys

    if len(sys.argv) < 2:

      print('Usage: python pw.py [account] - copy account password')

      sys.exit()

    account = sys.argv[1] # first command line arg is the account name

    if account in PASSWORDS:

      pyperclip.copy(PASSWORDS[account])

      print('Password for ' + account + ' copied to clipboard.')

    else:

      print('There is no account named ' + account)

     1 #! python3
     2 
     3 # pw.py - An insecure password locker program.
     4 
     5 PASSWORDS = {'email': 'F7minlBDDuvMJuxESSKHFhTxFtjVB6',
     6 
     7 'blog': 'VmALvQyKAxiVH5G8v01if1MLZF3sdt',
     8 
     9 'luggage': '12345'}
    10 
    11 import sys
    12 
    13 if len(sys.argv) < 2:
    14 
    15   print('Usage: python pw.py [account] - copy account password')
    16 
    17   sys.exit()
    18 
    19 account = sys.argv[1] # first command line arg is the account name
    20 
    21 if account in PASSWORDS:
    22 
    23   pyperclip.copy(PASSWORDS[account])
    24 
    25   print('Password for ' + account + ' copied to clipboard.')
    26 
    27 else:
    28 
    29   print('There is no account named ' + account)

    实现功能:由于在登录是时长忘记密码,所以可以将器保存为一个.py文件,以字典的形式,然后通过字典与剪切版的结合实现密码账户的复制填充。

    扩展:

           在 Windows 上,你可以创建一个批处理文件,利用 Win-R 运行窗口,来运行 这个程序(关于批处理文件的更多信息,参见附录 B)。在文件编辑器中输入以下 代码,保存为 pw.bat,放在 C:Windows 目录下:

    @py.exe C:Python34pw.py %*

    @pause

    有了这个批处理文件,在 Windows 上运行口令保存程序,就只要按下 Win-R, 再输入 pw 。 

  • 相关阅读:
    SQL 取日期
    myeclipse 8.5 安装jbpm3.2开发插件
    持续感悟
    程序员应该读的书与经常上的网站
    java连接ms sql server各类问题解析
    怎么实现Redis的高可用?(主从、哨兵、集群)
    Web系统突然爆”Asp.net ajax客户端框架未能加载“的一种可能原因(误改服务器系统时间)
    【转】Skyline软件介绍
    ArcSDE启动遇到ORA12560: TNS: 协议适配器错误解决办法
    开放源代码GIS资源集锦
  • 原文地址:https://www.cnblogs.com/qingsheng/p/9095101.html
Copyright © 2011-2022 走看看