小编GP8*_*P89的帖子

如何找出我目前在Pycharm的哪个班级?

一个相当简单的问题,我确信有答案,我似乎无法通过搜索找到它

有时我正在查看或编写一些我想要仔细检查的代码,或者找出我所在的课程,是否有更简单的方法可以找到而无需向上滚动class

pycharm

17
推荐指数
3
解决办法
1759
查看次数

使用pywin32的子菜单的Windows资源管理器上下文菜单

我正在尝试使用带有图标和子菜单的python添加一些shell扩展,但我很难比pywin32中的演示更进一步.我似乎无法通过搜索谷歌找到任何东西.

我相信我需要注册一个com服务器,以便能够根据右键单击文件/文件夹的位置和文件类型等更改子菜单中的选项.

# A sample context menu handler.
# Adds a 'Hello from Python' menu entry to .py files.  When clicked, a
# simple message box is displayed.
#
# To demostrate:
# * Execute this script to register the context menu.
# * Open Windows Explorer, and browse to a directory with a .py file.
# * Right-Click on a .py file - locate and click on 'Hello from Python' on
#   the context menu.

import pythoncom
from win32com.shell …
Run Code Online (Sandbox Code Playgroud)

python contextmenu pywin32 shell-extensions

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

ImportError:无法使用cx_Freeze导入名称MAXREPEAT

我遇到了cx_Freeze运行冻结应用程序的问题(工作正常解冻).

运行程序时,会产生以下回溯:

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/site-packages/cx_Freeze/initscripts/Console.py", line 27, in <module>
    exec code in m.__dict__
  File "PythonApp/mainframe.py", line 3, in <module>
  File "/usr/local/lib/python2.7/site-packages/dbus/__init__.py", line 103, in <module>
    from dbus._dbus import Bus, SystemBus, SessionBus, StarterBus
  File "/usr/local/lib/python2.7/site-packages/dbus/_dbus.py", line 39, in <module>
    from dbus.bus import BusConnection
  File "/usr/local/lib/python2.7/site-packages/dbus/bus.py", line 39, in <module>
    from dbus.connection import Connection
  File "/usr/local/lib/python2.7/site-packages/dbus/connection.py", line 27, in <module>
    import threading
  File "/usr/local/lib/python2.7/threading.py", line 44, in <module>
    module='threading', message='sys.exc_clear')
  File "/usr/local/lib/python2.7/warnings.py", line 57, in filterwarnings …
Run Code Online (Sandbox Code Playgroud)

python cx-freeze python-2.7

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

Super可以处理多重继承吗?

从这样的两个对象继承时

class Foo(object):
  def __init__(self,a):
    self.a=a

class Bar(object):
  def __init__(self,b):
    self.b=b
Run Code Online (Sandbox Code Playgroud)

我通常会这样做

class FooBar(Foo,Bar):
  def __init__(self,a,b):
    Foo.__init__(self,a)
    Bar.__init__(self,b)
Run Code Online (Sandbox Code Playgroud)

超级怎么知道我是否想要同时打电话?如果是这样,它将如何知道哪个参数传递到哪里.或者根本不可能在这里使用超级?

即使Foo和Bar采取相同的论点可以super处理这个?

或者我不应该首先尝试这样做吗?

python multiple-inheritance

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

在xaml中使用TreeViewItems的ListView

我对c#很陌生,我要做的第一件事就是ListView使用数据绑定,结果还不错.

我现在正试图让物品有一个扭曲按钮,如果底层模型有任何孩子(如TreeView).每个孩子的列都与所有顶级项目相同.

我该怎么做呢?这样的控件是否存在?如果不是,我会更好地打扮一个TreeView看起来像一个ListView,或打扮一个ListView看起来像TreeView

我沿着这个解决方案中概述的道路走了一条TreeView,但最终的结果看起来非常糟糕,标题实际上只是一个项目,所以你失去了所有漂亮的列大小和列按钮,可以连接到列排序你进入,ListView这样的路线实际上似乎会更多的工作.

我注意到新任务管理器的控件与我正在尝试创建的完全一样,我不知道这是怎么做的?可能在C中.

ListView与TreeView项目

c# wpf xaml c#-4.0

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

python继续,除非条件不满足

我经常发现自己想要做这样的事情,我有一些东西包裹在这样的尝试中

item= get_item()
try:
    do_work(item)
except SomeError as err:
    if err.code == 123:
        do_something(item)
    else:
        # Actually I don't want to do something with this error code... I want to handle in 'except'
except:
    put_back(item)
    raise
Run Code Online (Sandbox Code Playgroud)

有没有办法except从其他地方加入下面的区块?(一个continue会很好)我​​最终做了类似下面的事情,并不是那么干净

item= get_item()
try:
    try:
        do_work(item)
    except SomeError as err:
        if err.code == 123:
            do_something(item)
        else:
            raise
 except:
     put_back(item)
     raise
Run Code Online (Sandbox Code Playgroud)

反正有吗?

python try-catch

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

从Python获取和设置mac文件和文件夹查找器标签

我一直试图找出如何从python获取和设置文件标签的颜色.

我找到的最接近解决方案的是这个,但我似乎无法在任何地方找到模块macfile.我只是不够努力吗?

如果不是,有没有不同的方法来实现这一目标?

python macos finder

7
推荐指数
3
解决办法
3687
查看次数

将大于maxint的时间戳转换为datetime对象

我有一些代码将一些存储为字符串的时间戳转换为datetime对象,并注意到今天转换日期时int时间戳值大于max int的异常.

datetime.datetime.fromtimestamp(2147570047)
Run Code Online (Sandbox Code Playgroud)

比如给我

ValueError: timestamp out of range for platform time_t
Run Code Online (Sandbox Code Playgroud)

我怎样才能解决这个问题?假设我想继续使用32位python(运行2.7.2)

我注意到我可以将max int转换为datetime对象,然后使用timedeltas添加任何额外的东西,但我想不出在实践中这样做的特别有效或好的方法.我可以将这些2038多个时间戳转换为datetime对象的好方法是什么?

python datetime year2038

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

为什么一个文件对象刷新,而另一个没有?

我想要一个文件对象,在写入数据时直接刷新文件,并写下:

class FlushingFileObject(file):
    def write(self,*args,**kwargs):
        return_val= file.write(self,*args,**kwargs)
        self.flush()
        return return_val

    def writelines(self,*args,**kwargs):
        return_val= file.writelines(self,*args,**kwargs)
        self.flush()
        return return_val
Run Code Online (Sandbox Code Playgroud)

但有趣的是,当我写它时它没有刷新,所以我尝试了一些包括这个的东西:

class FlushingFileObject(object):
    def __init__(self,*args,**kwargs):
        self.file_object= file(*args,**kwargs)

    def __getattr__(self, item):
        return getattr(self.file_object,item)

    def write(self,*args,**kwargs):
        return_val= self.file_object.write(*args,**kwargs)
        self.file_object.flush()
        return return_val

    def writelines(self,*args,**kwargs):
        return_val= self.file_object.writelines(*args,**kwargs)
        self.file_object.flush()
        return return_val
Run Code Online (Sandbox Code Playgroud)

冲洗.

为什么不在file此实例中进行子类化工作?

python file flush

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

为什么__getattr__不能与__exit__一起使用?

在尝试解决另一个问题时,我偶然发现了这一点.

这对我来说似乎非常奇怪,我认为值得提问.为什么似乎没有__getattr__合作with

如果我做这个对象:

class FileHolder(object):
    def __init__(self,*args,**kwargs):
        self.f= file(*args,**kwargs)

    def __getattr__(self,item):
        return getattr(self.f,item)
Run Code Online (Sandbox Code Playgroud)

并使用它with,

>>> a= FileHolder("a","w")
>>> a.write
<built-in method write of file object at 0x018D75F8>
>>> with a as f:
...   print f
...
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: __exit__
>>> a.__exit__
<built-in method __exit__ of file object at 0x018D75F8>
Run Code Online (Sandbox Code Playgroud)

为什么会这样?

编辑

>>> object.__exit__
Traceback (most recent call last):
  File "<stdin>", line 1, …
Run Code Online (Sandbox Code Playgroud)

python with-statement attr

4
推荐指数
2
解决办法
396
查看次数