Module PYOS.get_terminal_size()不工作
Ubuntu 18.04.2 LTS上的Python 3.7.1 使用Pycharm版本:Module PYOS.get_terminal_size()不工作,module,operating-system,pycharm,python-3.7,Module,Operating System,Pycharm,Python 3.7,Ubuntu 18.04.2 LTS上的Python 3.7.1 使用Pycharm版本: PyCharm 2019.1.3 (Professional Edition) Build #PY-191.7479.30, built on May 30, 2019 Linux 4.18.0-22-generic 我在os.get\u terminal\u size()函数调用中遇到问题 从“终端”窗口运行命令可以: Python 3.7.1 (default, Oct 22 2018, 11:21
PyCharm 2019.1.3 (Professional Edition)
Build #PY-191.7479.30, built on May 30, 2019
Linux 4.18.0-22-generic
我在os.get\u terminal\u size()函数调用中遇到问题
从“终端”窗口运行命令可以:
Python 3.7.1 (default, Oct 22 2018, 11:21:55)
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.get_terminal_size()
os.terminal_size(columns=223, lines=18)
但是从Python控制台窗口运行它并不能
>>>import os
>>>os.get_terminal_size()
Traceback (most recent call last):
File "<input>", line 1, in <module>
OSError: [Errno 25] Inappropriate ioctl for device
导入操作系统
>>>操作系统获取终端大小()
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
OSError:[Errno 25]设备的ioctl不正确
我的谷歌搜索并没有针对我手头的问题提供太多信息。
OSError:[Errno 25]设备的ioctl不合适实际上意味着什么?我如何修复它?您的Python实现依赖于终端是否符合操作系统对终端大小的请求。在中,ioctl()
中的系统调用将失败,因为设备(终端)无法识别该命令。你可以试着设置
-Drun.processes.with.pty=true
在帮助/编辑自定义虚拟机选项中…
根据答案。您可以使用shutil
代替os
。这在Pycharm中没有任何问题(并且希望扩展到IntelliJ)
import shutil
terminal_size = shutil.get_terminal_size(fallback=(120, 50))
# attributes
print('cols=', terminal_size.columns)
print('rows=', terminal_size.rows)