精华内容
下载资源
问答
  • argv将是shell解析的所有参数的列表。所以如果我#script.pyfrom sys import argvprint argv$python script.py hello, how are you['script.py','hello','how','are','you]脚本的名称始终是列表的第一个元素。如果...

    argv将是shell解析的所有参数的列表。

    所以如果我#script.py

    from sys import argv

    print argv

    $python script.py hello, how are you

    ['script.py','hello','how','are','you]

    脚本的名称始终是列表中的第一个元素。如果我们不使用引号,每个单词也将成为列表中的一个元素。print argv[1]

    print argv[2]

    $python script.py hello how are you

    hello

    how

    但如果我们用引号$python script.py "hello, how are you"

    ['script.py','hello, how are you']

    所有单词现在都是列表中的一项。所以就这样做print "The script is called:", argv[0] #slicing our list for the first item

    print "Your first variable is:", argv[1]

    或者如果出于某种原因不想使用引号:print "The script is called:", argv[0] #slicing our list for the first item

    print "Your first variable is:", " ".join(argv[1:]) #slicing the remaining part of our list and joining it as a string.

    $python script.py hello, how are you

    $The script is called: script.py

    $Your first variable is: hello, how are you

    展开全文
  • 命令行参数随笔

    2019-08-01 12:22:20
    命令行参数随笔 命令行参数是用于从程序外部输入数据进而控制程序。 C标准规定main函数作为程序...命令行界面中输入的所有字符被存储在这个数组中,可以用for循环遍历。 此处为测试代码: #define _CRT_SECURE_NO...

    命令行参数随笔

    命令行参数是用于从程序外部输入数据进而控制程序。
    C标准规定main函数作为程序入口,可以没有参数,也可以有两个参数。两种参数的情况下,第一个参数argc是命令行中的字符串个数,字符串的分隔按空格来,第二个参数argv是一个指向这些字符串的指针数组。命令行界面中输入的所有字符串被存储在这个数组中,可以用for循环遍历。

    此处为测试代码:

    #define _CRT_SECURE_NO_WARNINGS 1
    
    #include <stdio.h>
    
    int main(int argc,char* argv[])
    {
        int i = 0;
        printf("%d\n", argc);//输出argc
        for (i = 0; i < argc; i++)
        {
            printf("%s\n", *(argv + i));//输出命令行参数
        }
        return 0;
    }
    

    在cmd命令行窗口下,拖动要执行的可执行文件(.exe),空格 参数一 空格参数二 …
    截图:

    在这里插入图片描述
    命令行参数被遍历输出了出来

    展开全文
  • 我们知道Ruby预定义了两个从命令行获取参数的常量,ARGV和ARGF。 其中,ARGV表示命令行参数数组;ARGF表示从标准输入得到虚拟文件对象。在这里用ARGV更合适一些,但是ARGV得到是字符...

    遇到这样一个练习,跟大家一起学习一下。

    • 定义方法sum,它接受一个整数数组作为参数,并返回该数组所有元素的和。对于空数组它应该返回0。

    看起来很简单,我的想法是这个整数数组是读取命令行获得的。我们知道Ruby中预定义了两个从命令行获取参数的常量,ARGV和ARGF。 其中,ARGV表示命令行参数数组;ARGF表示从标准输入得到的虚拟文件对象。在这里用ARGV更合适一些,但是ARGV得到的是字符串,所以在对其进行加总计算的时候,就需要转换成数字形式。我的代码是这样的:

    def sum(a)
      total = 0
      a.each do |i|
        total += i.to_s.to_i
      end
      p total
    end
    
    sum(ARGV)

    也许您用一行代码就实现上面的功能了,欢迎指教。

    展开全文
  • 在Python所有标识符可以包括英文、数字以及下划线(_),但并不能以数字开头。 Python中的标识符是区分大小写。 以下划线开头标识符是有特殊意义。以单下划线开头 _foo 代表不能直接访问类属性,需通过...

    2Python基础语法

    2.1运行.py文件

    运行方式类似:

    $ python test.py
    

    2.2Python标识符

    在Python里,标识符由字母、数字、下划线组成。 在Python中,所有标识符可以包括英文、数字以及下划线(_),但并不能以数字开头。

    Python中的标识符是区分大小写的。

    • 以下划线开头的标识符是有特殊意义的。以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入。
    • 以双下划线开头的__foo代表类的私有成员,以双下划线开头和结尾的__foo__代表Python里特殊方法专用的标识,如__init__()代表类的构造函数。
    • Python 可以同一行显示多条语句,方法是用分号 ; 分开

    2.3Python保留字符

    下面的列表现实和了在Python的保留字。这些保留字不能用作常数或变数,或任何其它标识符名称。

    and    exec     not       assert    finally    or    break    for     pass    class
    from   print     continue   global    raise     def   if     return   del    import
    try  elif    in    while     else      is        with    except    lambda   yield
    

    2.4行和缩进

    学习Python与其他语法最大的区别就是,Python的代码不使用大括号{}来控制类,函数以及其他逻辑判断。Python最具特色的就是用缩进来写模块。

    缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。

    以下实例缩进为四个空格:

    # -*- coding: UTF-8 -*-
    
    if True:
        print("Answer")
        print("True")
    else:
        print("Answer")
        #没有严格缩进,在执行时会报错(下面的代码有严格缩进,所以不会报错)
        print("False")
    

    运行结果:

    D:\installed\Anaconda3\python.exe E:/workspace/python/python/01_Python中文编码/02_行和缩进.py
    Answer
    True
    

    以下代码将会执行错误:

    # -*- coding: UTF-8 -*-
    
    if True:
        print("Answer")
        print("True")
    else:
        print("Answer")
        #没有严格缩进,在执行时会报错
      print("False")
    

    执行结果:

    D:\installed\Anaconda3\python.exe E:/workspace/python/python/01_Python中文编码/02_行和缩进.py
      File "E:/workspace/python/python/01_Python中文编码/02_行和缩进.py", line 9
        print("False")
                     ^
    IndentationError: unindent does not match any outer indentation level
    

    IndentationError: unindent does not match any outer indentation level错误表明,你使用的缩进方式不一致,有的是tab键缩进,有的是空格缩进,改为一致即可。

    如果是 IndentationError: unexpected indent 错误, 则 python 编译器是在告诉你"Hi,老兄,你的文件里格式不对了,可能是tab和空格没对齐的问题",所有 python 对格式要求非常严格。

    因此,在 Python 的代码块中必须使用相同数目的行首缩进空格数。

    建议你在每个缩进层次使用 单个制表符 或 两个空格 或 四个空格 , 切记不能混用

    2.5多行语句

    Python语句中一般以新行作为语句的结束符。
    但是我们可以使用斜杠(\)将一行的语句分为多行显示,如下所示:

    total = item_one + \
            item_two + \
            item_three
    

    语句中包含[],{}或()括号就不需要使用多行连接符。如下实例:

    days = ['Monday', 'Tuesday', 'Wednesday',
            'Thursday', 'Friday']
    

    2.6Python引号

    Python可以使用引号(‘)、双引号(‘’’或”””)来表示字符串,引号的开始与结束必须得相同类型的。

    其中三引号可以由多行组成,编写多行文本的快捷语法,常用语文档字符串,在文件的特定地点,被当做注释。

    # -*- coding: UTF-8 -*-
    
    """
    下面是三种引号的写法
    """
    word = 'word'
    sentence = "设置一个句子"
    paragraph = """这是一个段落。
    包含了多个语句
    """
    
    print("word = ",word)
    print("sentence = " + sentence)
    print("paragraph = "+paragraph)
    

    运行结果:

    D:\installed\Anaconda3\python.exe E:/workspace/python/python/01_Python中文编码/03_python引号.py
    word =  word
    sentence = 设置一个句子
    paragraph = 这是一个段落。
    包含了多个语句
    
    
    Process finished with exit code 0
    

    2.7Python注释

    Python中单行注释采用#开头。

    # -*- coding: UTF-8 -*-
    
    #第一个注释
    print("Hello,Python")   #第二个注释
    

    python 中多行注释使用三个单引号(’’’)或三个双引号(""")。

    实例:

    # -*- coding: UTF-8 -*-
    
    '''
    这是多行注释,使用单引号。
    这是多行注释,使用单引号。
    这是多行注释,使用单引号。
    '''
    
    """
    这是多行注释,使用双引号。
    这是多行注释,使用双引号。
    这是多行注释,使用双引号。
    """
    

    2.8等待用户输入

    下面的程序执行后就会等待用户输入,按回车键后就会退出:

    # -*- coding: UTF-8 -*-
    
    input("按下enter键退出,其他任意键显示...\n")
    

    运行结果:

    D:\installed\Anaconda3\python.exe E:/workspace/python/python/Python/06_等待用户输入.py
    按下enter键退出,其他任意键显示...
    
    
    Process finished with exit code 0
    

    以上代码中,\n实现换行。一旦用户按下enter(回车)键退出,其它键显示。

    2.9同一行显示多条语句

    # -*- coding: UTF-8 -*-
    
    import sys; x = 'runoob'; sys.stdout.write(x + '\n')
    

    输出结果:

    D:\installed\Anaconda3\python.exe E:/workspace/python/python/Python/07_同一行显示多条语句.py
    runoob
    
    Process finished with exit code 0
    

    2.10多个语句构成代码组

    缩进相同的一组语句构成一个代码块,我们称之代码组。
    像if、while、del和class这样的符合语句,首航以关键字开始,以冒号(:)结束,该行之后的一行或多行代码构成代码组。
    我们将首行及后面的代码组称为一个子句(clause)。

    如下实例:

    if expression : 
       suite 
    elif expression :  
       suite  
    else :  
       suite 
    

    2.11命令行参数

    很多程序可以执行一些操作来查看一些基本信息,Python可以使用-h参数查看个参数帮助信息:

    C:\Users\toto>python -h
    usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...
    Options and arguments (and corresponding environment variables):
    -b     : issue warnings about str(bytes_instance), str(bytearray_instance)
             and comparing bytes/bytearray with str. (-bb: issue errors)
    -B     : don't write .pyc files on import; also PYTHONDONTWRITEBYTECODE=x
    -c cmd : program passed in as string (terminates option list)
    -d     : debug output from parser; also PYTHONDEBUG=x
    -E     : ignore PYTHON* environment variables (such as PYTHONPATH)
    -h     : print this help message and exit (also --help)
    -i     : inspect interactively after running script; forces a prompt even
             if stdin does not appear to be a terminal; also PYTHONINSPECT=x
    -I     : isolate Python from the user's environment (implies -E and -s)
    -m mod : run library module as a script (terminates option list)
    -O     : remove assert and __debug__-dependent statements; add .opt-1 before
             .pyc extension; also PYTHONOPTIMIZE=x
    -OO    : do -O changes and also discard docstrings; add .opt-2 before
             .pyc extension
    -q     : don't print version and copyright messages on interactive startup
    -s     : don't add user site directory to sys.path; also PYTHONNOUSERSITE
    -S     : don't imply 'import site' on initialization
    -u     : force the stdout and stderr streams to be unbuffered;
             this option has no effect on stdin; also PYTHONUNBUFFERED=x
    -v     : verbose (trace import statements); also PYTHONVERBOSE=x
             can be supplied multiple times to increase verbosity
    -V     : print the Python version number and exit (also --version)
             when given twice, print more information about the build
    -W arg : warning control; arg is action:message:category:module:lineno
             also PYTHONWARNINGS=arg
    -x     : skip first line of source, allowing use of non-Unix forms of #!cmd
    -X opt : set implementation-specific option
    --check-hash-based-pycs always|default|never:
        control how Python invalidates hash-based .pyc files
    file   : program read from script file
    -      : program read from stdin (default; interactive mode if a tty)
    arg ...: arguments passed to program in sys.argv[1:]
    
    Other environment variables:
    PYTHONSTARTUP: file executed on interactive startup (no default)
    PYTHONPATH   : ';'-separated list of directories prefixed to the
                   default module search path.  The result is sys.path.
    PYTHONHOME   : alternate <prefix> directory (or <prefix>;<exec_prefix>).
                   The default module search path uses <prefix>\python{major}{minor}.
    PYTHONCASEOK : ignore case in 'import' statements (Windows).
    PYTHONIOENCODING: Encoding[:errors] used for stdin/stdout/stderr.
    PYTHONFAULTHANDLER: dump the Python traceback on fatal errors.
    PYTHONHASHSEED: if this variable is set to 'random', a random value is used
       to seed the hashes of str and bytes objects.  It can also be set to an
       integer in the range [0,4294967295] to get hash values with a
       predictable seed.
    PYTHONMALLOC: set the Python memory allocators and/or install debug hooks
       on Python memory allocators. Use PYTHONMALLOC=debug to install debug
       hooks.
    PYTHONCOERCECLOCALE: if this variable is set to 0, it disables the locale
       coercion behavior. Use PYTHONCOERCECLOCALE=warn to request display of
       locale coercion and locale compatibility warnings on stderr.
    PYTHONBREAKPOINT: if this variable is set to 0, it disables the default
       debugger. It can be set to the callable of your debugger of choice.
    PYTHONDEVMODE: enable the development mode.
    PYTHONPYCACHEPREFIX: root directory for bytecode cache (pyc) files.
    
    C:\Users\toto>
    
    展开全文
  • Go的命令行参数存储在切片 os.Args,其中第一个参数为可执行文件名字,其他的参数都是以字符串的形式,存储在slice os.Args当中,可以通过for range 语句来遍历所有的参数 1.3 flag包参数解析 os包参数解析只是把...
  • 这里我们只需要获取控制台输入的字符是啥,直接抄过来。 1.sys 模块 import sys 访问到所有命令行参数: python xxx.pyxxx.py及其之后的才是,之前的不是。 要编译的.py文件就是第一个参数。 它的返回值...
  • 把当前目录下的所有jpg文件的日期年份更改为2009年,保持日期的其他部分(月、日及时间)不变! (三)jhead-nf%Y_%m%d_i*jpg 把当前目录下的所有jpg文件的文件名更改为:年4位_月2位日2位_4位序号jpg如:2009_1201_...
  • 介绍随着laravel,symfony等框架流行,命令行工具越来越流行,但是很多时候命令太多,根本无法记住所有参数,或者参数太长输入太不方便。这时是否也想拥有一个像IDE中的自动补全功能?手摸手,一起撸一个自动补全...
  • 关于Shell中的位置参数变量

    千次阅读 2013-08-06 00:17:56
     位置参数是一种在调用Shell程序的命令行中按照各自的位置决定的变量,是在程序名之后输入的参数,它们分别标识了用户输入的整个命令行中以空格分隔开的字符,其中,$1标识第一个位置的参数,$2标识第二个,...
  • Linux命令行与shell脚本编程大全(第2版)

    千次下载 热门讨论 2014-02-20 13:51:01
    13.2.2 抓取所有的数据 13.3 移动变量 13.4 处理选项 13.4.1 查找选项 13.4.2 使用getopt命令 13.4.3 使用更高级getopts 13.5 将选项标准化 13.6 获得用户输入 13.6.1 基本读取 13.6.2 超时 13.6.3 ...
  • 14.7 在命令行中使用函数 107 14.7.1 在命令行创建函数 107 第15章 在脚本中添加颜色 107 15.1 创建文本菜单 108 15.1.1 创建菜单布局 108 15.1.5 使用select命令 109 15.2 添加颜色 111 15.2.1 ANSI转义码 111 ...
  • 特殊变量提醒: ... $@ 保存所有参数,当做同一个字符串中的多个独立单词 getopts 命令格式: getopts optstring variable 有效字母都会列在optstring,当前参数保存在 variable 示例: #...
  • 在浏览器 JavaScript ,通常 window 是全局对象, 而 Node.js 中的全局对象是 global,所有全局变量(除了 global 本身以外)都是 global 对象属性。 注意: 最好不要使用 var 定义变量以避免引入全局变量,因为...
  • grep参数详解

    千次阅读 2015-07-03 18:12:49
    让grep egrep和fgrep命令行中该选项之后字符是相关文件文件名。该文件包含了将 在输入中搜索目标。标准grep不能识别该选项 -v 反义选项,使grep选择所有和模式不匹配行。 -c 计数选项。请求包含匹配...
  • yes命令在命令行中输出指定字符,直到yes进程被杀死。不带任何参数输入yes命令默认字符就是y。 02. 命令格式 用法:yes [OPTION]... [STRING]... 03. 常用选项 不断输出包括所有指定STRING(s)一行,或者是...
  • 参数的含义是程序在命令行下运行的时候,需要输入argc 个参数,每个参数是以char 类型输入的,依次存在数组里面,数组是 argv[],所有参数在指针  char * 指向的内存,数组的元素的个数为 argc 个,第一个...
  • Linux shell(四)

    2017-11-04 21:09:33
    $*变量会将命令行上的所有参数当做一个单词存储,这个单词包含了命令行中出现的每一个参数,基本上$*变量会将这些参数视为一个整体而不是多个个体 $@变量会将命令行上提供的所有参数当做同一个字符中的多个独立的...
  • main函数argc,argv作用

    2013-08-28 21:52:00
    Main函数中的argc和argv说明 C/C++语言中的main函数,经常带有参数argc,argv,如下: ...argc是指命令行输入参数的个数,argv存储了所有的命令行参数(指向字符串的指针,字符本身是char*,多个
  • 所有AT命令行都必须以“AT”和“at”开头: 命令格式: 查询命令: AT+CXXX? 该命令用于查询参数的当前值。...实际在串口中输入命令是不需要输入&lt;&gt;、[]。所有AT指令本身不区分大...
  • 本题的难点在于如何提取命令行输入的参数,本题中运用的是$*,表示在命令行中实际给出的所有实参字符,说人话就是:代表所有参数本身内容。 详情请参考:shell预先定义的特殊变量 其实,用位置变量 $1 代替
  • 一、交互式编程什么是交互式编程,就是在命令行中输入python 命令即可启动交互式编程,提示窗口如下:而且还用了Python3print方法打印出一字符。二、脚本式编程通过脚本参数调用解释器开始执行脚本,直到脚本...
  • 一、交互式编程什么是交互式编程,就是在命令行中输入python 命令即可启动交互式编程,提示窗口如下:而且还用了Python3print方法打印出一字符。二、脚本式编程通过脚本参数调用解释器开始执行脚本,直到脚本...
  • 详细内容一、交互式编程什么是交互式编程,就是在命令行中输入python 命令即可启动交互式编程,提示窗口如下:而且还用了Python3print方法打印出一字符。二、脚本式编程通过脚本参数调用解释器开始执行脚本,...
  • python模块学习---cmd

    2017-03-30 08:07:20
    Cmd类型提供了一个创建命令行解析器框架。简单来说,可以继承Cmd来创建...比如,如果在命令行中输入: say hello do_say方法会连同作为唯一参数的字符"hello"一起调用。 *********************************
  • Python:cmd模块

    千次阅读 2014-08-07 14:30:14
    Cmd类型提供了一个创建命令行解析器框架。简单来说,可以继承Cmd来...比如,如果在命令行中输入: say hello do_say方法会连同作为唯一参数的字符"hello"一起调用。 *************************************
  • 通过大量简短、易于输入的范例,每 次阐述一两个概念,激励读者通过立刻应用来掌握全新的主题;而每章最后的复习题和编程练习则强调了 最重要的信息,并帮助读者消化最难以理解的概念。本书是一本友好而易于...
  • 通过大量简短、易于输入的范例,每 次阐述一两个概念,激励读者通过立刻应用来掌握全新的主题;而每章最后的复习题和编程练习则强调了 最重要的信息,并帮助读者消化最难以理解的概念。本书是一本友好而易于...
  • 运行一个新进程,即在一个程序启动另一个程序,可以使用system库函数,运行以字符串参数传递给它命令并等待该命令完成。 system("ps ax"); 相当于在命令行输入ps ax,但如果想让这个进程后台运行,可以把上述...

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 173
精华内容 69
关键字:

命令行中输入的所有参数串