python 脚本传递参数

给python程序传递参数

运行python脚本时有时需要执行实传递参数

在linux下:

[[email protected] ~]# cat /opt/python.py
#!/usr/local/bin/python
# -*- coding:utf-8 -*-

import sys

print(sys.argv[0])          #sys.argv[0] 类似于shell中的$0,但不是脚本名称,而是脚本的路径
print(sys.argv[1])          #sys.argv[1] 表示传入的第一个参数,既 hello

#运行结果:

[[email protected] ~]# python /opt/python.py hello
/opt/python.py       #打印argv[0]  脚本路径
hello                      #打印argv[1]  传入的参数 hello

在windows 下:

打开CMD或powershell,切换到python脚本所在位置,使用python filename.py执行脚本

#编辑  D:\Python\Study\python.py
#内容如下:
#!/usr/bin/env python
# -*-coding:utf-8 -*-

import sys

print(sys.argv[0])
print(sys.argv[1])

进入powershell
PS C:\Windows\system32> cd D:\Python\Study   #进入目录

PS D:\Python\Study> python python.py     #执行python脚本 (未传参数)
python.py                                                    #报错信息
Traceback (most recent call last):
  File "python.py", line 7, in <module>
    print(sys.argv[1])
IndexError: list index out of range

PS D:\Python\Study> python python.py hello  #传入参数(正常运行)
python.py
hello

或以绝对路径执行:
PS D:\Python\Study> python D:\Python\Study\python.py hello
D:\Python\Study\python.py
hello

PyCharm 下运行python脚本并传递参数

编辑脚本:

Alt + Shift + F10 执行

报错

传递参数的方法:

Alt + Shift + F10 弹出

选择:Edit configurations 弹出

在左侧选择要传入参数的文件,在右侧Configuration-->Script parameters 中添加要传递的参数 --> RUN

执行结果:

原文地址:https://www.cnblogs.com/shona/p/11969790.html

时间: 2024-10-25 00:13:53

python 脚本传递参数的相关文章

shell调用python脚本,并且向python脚本传递参数

1.shell调用python脚本,并且向python脚本传递参数: shell中: python test.py $para1 $para2 python中: import sys def main($canshu1, $canshu2) ..... main(sys.argv[1], sys.argv[2]) 2.使用shell调用python中的函数: python脚本如下: test.py: import ConfigParser config = ConfigParser.Config

【hadoop】如何向map和reduce脚本传递参数,加载文件和目录

本文主要讲解三个问题: 1 使用Java编写MapReduce程序时,如何向map.reduce函数传递参数. 2 使用Streaming编写MapReduce程序(C/C++, Shell, Python)时,如何向map.reduce脚本传递参数. 3 使用Streaming编写MapReduce程序(C/C++, Shell, Python)时,如何向map.reduce脚本传递文件或文件夹. (1) streaming 加载本地单个文件 (2) streaming 加载本地多个文件 (3

如何向map和reduce脚本传递参数,加载文件和目录

本文主要讲解三个问题: 1 使用Java编写MapReduce程序时,如何向map.reduce函数传递参数. 2 使用Streaming编写MapReduce程序(C/C++, Shell, Python)时,如何向map.reduce脚本传递参数. 3 使用Streaming编写MapReduce程序(C/C++, Shell, Python)时,如何向map.reduce脚本传递文件或文件夹. (1) streaming 加载本地单个文件 (2) streaming 加载本地多个文件 (3

20.27分发系统介绍;20.28expect脚本远程登录;20.29expect脚本远程执行命令;20.30expect脚本传递参数

20.27 分发系统介绍 shell项目-分发系统-expect 20.28 expect脚本远程登录 1. 安装expect [[email protected] ~]# yum install -y expect 自动远程登录 2. 创建配置1.expect脚本(远程登录) [[email protected] ~]# vim 1.expect 添加内容(自动远程登录hao2机器并执行命令) #! /usr/bin/expect set host "192.168.211.129"

Python脚本获取参数的方式

在运维过程中,常常需要自己写脚本,而python往往是最佳的选择.那么怎么获取python脚本的命令行参数呢,例如: python demo.py a b c 怎么获取命令行参数,a,b,c 呢?可以通过sys库里面的argv来实现, 例如: $ cat demo.py #-*- coding: UTF-8 -*- import os import sys def demo(): print sys.argv print len(sys.argv) for i in range(len(sys.

PowerShell脚本传递参数

在编写PowerShell脚本的时候,可以通过给变量赋值的方法输出想要的结果,但这样的话,需要改动脚本内容.其实也可以在脚本中定义参数,然后再在执行脚本的时候对参数赋值,而无需改动脚本内容. 在PowerShell脚本中,可以使用param()声明参数,如下: param($a,$b) write-host "Hello,$a" write-host "nihao,$b" 将以上内容保存在F盘根目录下,命名为hello.ps1. 在命令提示符下运行该脚本,并分别为参

分发系统介绍、expect脚本远程登录、expect脚本远程执行命令、expect脚本传递参数

20.27 分发系统介绍 应用场景 当业务越做越大,服务器需求越来越多,几台服务器的话还好一点:当十几.几十台的时候,工作量就非常大!并且不规范,需要一个模板机分发到各个机器上去. 可以用开源的软件,expect脚本语言,进行实现分发系统的功能. 20.28 expect脚本远程登录 yum install -y expect 自动远程登录,并执行命令 #!/usr/bin/expect set host "192.168.21.130" set passwd "rootro

分发系统介绍,expect脚本远程登录,expect脚本远程执行命令,expect脚本传递参数

分发系统介绍 当我们要上线一个新代码的时候,如果机器少,我们的工作量不会很大,很容易完成,如果设备很多,有几十台,上百台的话,那我们的工作量会非常大,而且也不规范,这时,我们就可以用可以用开源的软件,expect脚本语言,进行实现分发系统的功能. expect脚本远程登录首先yum安装expectyum install -y expect 然后写一个expect的远程登录脚本#! /usr/bin/expectset host "192.168.133.132" 这是expect的变量

分发系统介绍,expect脚本远程登录, expect脚本远程执行命令, expect脚本传递参数

分发系统介绍 当我们要上线一个新代码的时候,如果机器少,我们的工作量不会很大,很容易完成,如果设备很多,有几十台,上百台的话,那我们的工作量会非常大,而且也不规范,这时,我们就可以用可以用开源的软件,expect脚本语言,进行实现分发系统的功能. expect脚本远程登录 首先yum安装expectyum install -y expect 然后写一个expect的远程登录脚本#! /usr/bin/expectset host "192.168.133.132" 这是expect的变