小编soc*_*ket的帖子

我应该在PyQt应用程序中使用`app.exec()`或`app.exec _()`吗?

我使用Python 3和PyQt5.这是我的测试PyQt5程序,重点关注最后两行:

from PyQt5.QtCore import *
from PyQt5.QtWidgets import *
import sys

class window(QWidget):
def __init__(self,parent=None):
    super().__init__(parent)
    self.setWindowTitle('test')
    self.resize(250,200)

app=QApplication(sys.argv)
w=window()
w.show()
sys.exit(app.exec())
#sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)

我知道exec是Python中的语言关键字.但官方PyQt5文档 上的代码(特别是退出部分的Object Destruction).我看到这个例子显示使用app.exec()它让我感到困惑.

当我在我的机器上测试它时.我发现与我的目的没有任何明显的区别.有和没有_产生相同的输出没有时间差.

我的问题是:

  • 我用的时候有什么不对app.exec()吗?喜欢与Python的内部冲突exec?我怀疑是因为两人exec正在执行某些事情.
  • 如果没有,我可以互换使用吗?

python qt pyqt python-3.x pyqt5

33
推荐指数
2
解决办法
1万
查看次数

如何在Ubuntu中播放PCM声音文件?

我有一个PCM声音文件,采样率16000,采样位16和通道1.我想播放它,但没有软件可以做.我也试过像ffplay:

ffplay -ar 16000 -ac 1 snake.raw
Run Code Online (Sandbox Code Playgroud)

但仍然失败了.如何在Ubuntu中播放PCM声音文件?

linux pcm

9
推荐指数
2
解决办法
2万
查看次数

close()永远不会关闭pymongo的连接?

我使用MongoDB并通过pymongo连接到它.这是我的代码:

>>> import pymongo
>>> con=pymongo.Connection('localhost',27017)
>>> con.database_names()
['local', 'bookdb']
>>> con.close()
>>> con.database_names()
['local', 'bookdb']
Run Code Online (Sandbox Code Playgroud)

con.close()用来断开与MongoDB的连接,但在那之后,我仍然可以 con.database_names() 用来查看数据库列表.为什么?它永远不会断开与MongoDB服务器的连接.为什么close()不行?

python mongodb pymongo

9
推荐指数
1
解决办法
6252
查看次数

read()函数的返回值是什么类型的?

我想从二进制文件中读取前188个字节,并检查第一个字符是否为0x47.代码如下:

import os
fp=open("try.ts","rb")
for i in range(100):
  buf=fp.read(188)
if buf[0]=="\x47":
  print "OK"
fp.close()
Run Code Online (Sandbox Code Playgroud)

但它给出了:

if buf[0]=="\x47":
IndexError: string index out of range
Run Code Online (Sandbox Code Playgroud)

我的问题是:

  1. read()功能中返回值的类型是什么?
  2. 如何获取字符串或数组中的第一个字符?

python byte

1
推荐指数
2
解决办法
1万
查看次数

打开(名称,"rb")作为f不需要关闭我是对的吗?

我注意到我可以打开这样的文件:

f=open("a.dat","rb")
Run Code Online (Sandbox Code Playgroud)

另一种方法:

with open("a.dat","rb") as f:
Run Code Online (Sandbox Code Playgroud)

在我看来,如果我使用第一个,我必须调用f.close()函数,而第二个方法不需要.我对吗?或者会有更好的方法?哪一个最好在python中打开一个文件?谢谢;-)

python

1
推荐指数
1
解决办法
1684
查看次数

标签 统计

python ×4

byte ×1

linux ×1

mongodb ×1

pcm ×1

pymongo ×1

pyqt ×1

pyqt5 ×1

python-3.x ×1

qt ×1