博客
关于我
Python的一个报错——OSError: [Errno 22] Invalid argument
阅读量:677 次
发布时间:2019-03-17

本文共 487 字,大约阅读时间需要 1 分钟。

为了便于获取当前终端的行列宽度 Python 脚本编写者可以使用以下代码段:

columns, rows = os.get_terminal_size()

通常情况下,这段代码能够正常运行并返回如上示例所示的终端尺寸信息。然而,若脚本的某些部分通过管道(如 ./hubble_bench.py --help | less )输出结果,则可能会导致终端尺寸获取失败,提示类似以下错误信息:

Traceback (most recent call last):  File "./hubble_bench.py", line 40, in 
columns, rows = os.get_terminal_size()OSError: [Errno 22] Invalid argument

为了解决此问题,可以改用 shutil 模块中的 get_terminal_size() 方法替换 os 模块:

columns, rows = shutil.get_terminal_size()

此替换方式能够有效解决上述问题,使脚本能够正确获取终端尺寸。

转载地址:http://owqhz.baihongyu.com/

你可能感兴趣的文章
Linux yum提示Loaded plugins错误的解决方法
查看>>
Netty的体系结构及使用
查看>>
xshell解决文本粘贴格式错误
查看>>
什么是证券型代币?
查看>>
Android中获取并设置屏幕亮度
查看>>
Swift中使用DispatchGroup分组管理异步任务
查看>>
MVVM_Template
查看>>
网络+图片加载框架(英文版)
查看>>
Python imageio方法示例
查看>>
Possible missing firmware
查看>>
JAVA BigInteger和BigDecimal类常用方式
查看>>
深度学习框架 各种模型下载集合 -- models list
查看>>
six.move 的作用
查看>>
错误:'BasicLSTMCell' object has no attribute '_kernel'
查看>>
机器学习全教程
查看>>
idea在连接mysql数据库时区错误
查看>>
2021-05-14
查看>>
Kali-linux:nmap命令
查看>>
s3c2440 ads程序移植到keil中(一) 初步完成
查看>>
工程经济—建设工程定额
查看>>