博客
关于我
Python的一个报错——OSError: [Errno 22] Invalid argument
阅读量:696 次
发布时间: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/

你可能感兴趣的文章
netlink2.6.32内核实现源码
查看>>
netmiko 自动判断设备类型python_Python netmiko模块的使用
查看>>
NetMizer 日志管理系统 多处前台RCE漏洞复现
查看>>
NetMizer-日志管理系统 dologin.php SQL注入漏洞复现(XVE-2024-37672)
查看>>
Netpas:不一样的SD-WAN+ 保障网络通讯品质
查看>>
netron工具简单使用
查看>>
NetScaler MPX Gateway Configuration
查看>>
NetScaler的常用配置
查看>>
netsh advfirewall
查看>>
NETSH WINSOCK RESET这条命令的含义和作用?
查看>>
netstat kill
查看>>
netstat命令用法详解
查看>>
Netstat端口占用情况
查看>>
Netty 4的内存管理:sun.misc.Unsafe
查看>>
Netty channelRegistered\ChannelActive---源码分析
查看>>
Netty NIO transport && OIO transport
查看>>
netty php,netty
查看>>
Netty WebSocket客户端
查看>>
netty 主要组件+黏包半包+rpc框架+源码透析
查看>>
Vue过渡 & 动画---vue工作笔记0014
查看>>