1

PyKDE.kdecore.KStandardDirs正確には、PyKDE を使用しようとしています。ドキュメントによると、このメソッドは 2 つの文字列で呼び出され、PyQt4 ドキュメントによると、標準の Pythonstrの代わりに を使用できますQString。これは機能しません:

>> KStandardDirs.locate()("socket", "foo")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: KStandardDirs.locate(): not enough arguments
>>> KStandardDirs.locate("socket", "foo")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: KStandardDirs.locate(): argument 1 has unexpected type 'str'

QString存在しないように見えるため、どちらも使用できません。

>>> from PyQt4.QtCore import QString
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: cannot import name QString
>>> from PyQt4.QtCore import *
>>> QString
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'QString' is not defined

私は何を間違っていますか?

4

1 に答える 1

3

少なくともそのエラー メッセージに関する限り、PyKDE はまだ Python 3 に対応していないと思われます。代わりにバイト文字列を渡してみてください:

KStandardDirs.locate(b"socket", "foo")
于 2012-12-27T11:44:54.133 に答える