为了账号安全,请及时绑定邮箱和手机立即绑定

莫名其妙的ResourceWarning:未关闭的文件<_io.TextIOWrapper名称= 3

莫名其妙的ResourceWarning:未关闭的文件<_io.TextIOWrapper名称= 3

侃侃无极 2021-04-09 17:07:17
我正在完成将代码从python2.7移至python3.5的操作,然后打开warnings以检查另一个模块。使用os.popen()时,出现以下错误。ResourceWarning: unclosed file <_io.TextIOWrapper name=3 encoding='UTF-8'>上面的示例中的“ name = 3”中的数字会有所不同,具体取决于代码,但始终为整数。此代码段产生错误,但尚未打开任何文件,这与错误消息完全冲突unclosed file。我的环境是使用python 3.5.2的Linux#!/usr/bin/env python3# -*- coding: UTF-8 -*-import warningsimport oswarnings.simplefilter('default')sink_list = os.popen('pacmd list-sinks | grep "name:" | cut --delimiter=: -f2').readlines()print (sink_list)sink = os.popen('pacmd list | grep "Default sink name" | cut --delimiter=: -f2').readline()print(sink)结果如下:test.py:6: ResourceWarning: unclosed file <_io.TextIOWrapper name=3 encoding='UTF-8'>  sink_list = os.popen('pacmd list-sinks | grep "name:" | cut --delimiter=: -f2').readlines()[' <alsa_output.pci-0000_00_1b.0.analog-stereo>\n', ' <fs2-Equaliser>\n', ' <fs2-bs2b>\n']test.py:8: ResourceWarning: unclosed file <_io.TextIOWrapper name=3 encoding='UTF-8'>  sink = os.popen('pacmd list | grep "Default sink name" | cut --delimiter=: -f2').readline() fs2-Equaliser有谁知道为什么发出此警告,尤其是在这种情况下,没有打开文件?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 1186 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号