如何在python中通过命令行给元组

质量17

我必须通过命令行输入一些参数。例如通过命令行的tileGridSize,clipLimit等。这就是我的代码的样子;

#!/usr/bin/env python
import numpy as np
import cv2 as cv
import sys #import Sys. 
import matplotlib.pyplot as plt

img = cv.imread(sys.argv[1], 0) # reads image as grayscale
clipLimit = float(sys.argv[2])
tileGridSize = tuple(sys.argv[3])
clahe = cv.createCLAHE(clipLimit, tileGridSize)
cl1 = clahe.apply(img)

# show image
cv.imshow('image',cl1)
cv.waitKey(0)
cv.destroyAllWindows()

如果我在下面传递参数(我想给(8,8)元组);

python testing.py picture.jpg 3.0 8 8

我收到以下错误。我了解错误,但不知道如何解决。

TypeError: function takes exactly 2 arguments (1 given)
泰德

我建议您研究argparse哪个是处理命令行的标准软件包,但要严格使用sys.argv

import sys


print(sys.argv[1], float(sys.argv[2]), tuple(map(int, sys.argv[3:])))
$ python testing.py picture.jpg 3.0 8 8
> picture.jpg 3.0 (8, 8)

怎么了:

  • sys.argv[3:]获取所有参数的列表,包括第4个(及之后3(索引
  • map(int, sys.argv[3:])int功能应用于列表中的所有项目
  • tuple(...)map生成器转换为适当的元组

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Python中访问命令行参数?

如何在Windows中通过命令行创建快捷方式?

如何通过命令行将数组传递给python

通过pytest在python中传递命令行参数

如何在C ++中通过命令行参数传递常量int?

如何在NIM中通过命令行正确传递参数?

如何在Windows命令行中通过WSL调用Linux命令?

如何在python中通过命令行激活``缩放到矩形''?

如何在SilverStripe 4中通过命令行运行BuildTask任务?

如何在Linux下通过命令行在相应命名的目录中组织文件

如何在OS X中通过命令行导出/导入单个钥匙串项目?

Accurev:如何在命令行中通过多行注释来保持/提升?

如何在python中对命令行参数进行分组?

如何在命令行中通过password参数使用openssl进行解密

如何在opensuse 13.1中通过命令行安装g ++

如何在Windows中通过命令行退出Firefox而又不强制退出?

如何在Python中读取整数命令行参数?

如何在隐身模式下通过带有URL的命令行通过命令行打开Google Chrome?

如何在Windows 10中通过命令行卸载VHD

如何在Mac OS X中通过命令行从metapackage安装单个软件包?

如何在python的gui中包括命令行界面

如何在Windows 10中以编程方式或通过命令行确定总线时钟?

如何在python的命令行中输入#?

如何在Ubuntu中通过命令行获取GPU的制造商?

python - 如何使用 ArgumentParser 通过命令行接受参数

如何在 Java 应用程序中通过命令行扫描 S3 文件?

如何通过命令行保存到列表中

如何在 C/C++ 中通过命令行传递输入(不是参数)?

通过命令行运行项目时如何在gradle中设置系统属性?