小编Zea*_*rin的帖子

在__main__.py中使用模块自己的对象

我正试图从其内部访问模块的数据__main__.py.

结构如下:

mymod/
    __init__.py
    __main__.py
Run Code Online (Sandbox Code Playgroud)

现在,如果我__init__.py像这样公开一个变量:

__all__ = ['foo']
foo = {'bar': 'baz'}
Run Code Online (Sandbox Code Playgroud)

如何访问foo__main__.py

python program-entry-point init

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

在Mac OS X中,如何获得文件描述符使用的准确计数?

在Linux上,ulimit -n可用于更改或查看进程的文件描述符数量限制,并且lsof -p nnn | wc -l似乎始终报告实际的文件描述符用法.

但是在Mac OS X上,lsof -p nnn | wc -l可以返回高于限制的数字.我想这意味着lsof返回的不仅仅是文件描述符,但我不知道是什么.

结论:如何在Mac OS X中准确计算文件描述符的使用情况?

unix macos lsof

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

Python的"__get*__"和"_del*__"方法有什么区别?

几个月前我刚刚开始学习Python,我试图理解不同__get*__方法之间的差异:

__get__
__getattr__
__getattribute__
__getitem___
Run Code Online (Sandbox Code Playgroud)

他们的__del*__等价物:

__del__
__delattr__
__delete__
__delitem__
Run Code Online (Sandbox Code Playgroud)

这些有什么区别?我什么时候应该使用另一个?是否有一个特定的原因,为什么大多数__get*__方法都有__set*__等价物,但没有__setattribute__

python accessor standard-library getter-setter

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

HTML5拖放getData()仅适用于Chrome中的drop事件?

我目前正在开发一个使用HTML5拖放API的项目来提供附加功能,包括将项目拖入和拖出浏览器.我目前遇到特定于Chrome的问题(否则只在Firefox中测试,它按预期工作).

问题是我不能使用该event.dataTransfer.getData(type)方法dragstart在除事件之外的任何事件中返回事件上的数据集drop.

在绑定到dragstart事件(发生火灾)后,我设置了这样的事件:

event.dataTransfer.setData('text/plain', "some string")
Run Code Online (Sandbox Code Playgroud)

然后在这个drop事件中,我可以得到数据.

event.dataTransfer.getData('text/plain')
Run Code Online (Sandbox Code Playgroud)

但是我不能在任何其他事件(例如dragover)上使用与上面相同的方法.即使我在调用之后尝试在线上使用上面的方法setData()(即在dragstart回调中),它仍然会返回undefined.

因此,在Chrome中,问题是getDataChrome会始终返回undefined,但drop事件回调除外.(在Firefox中,我可以成功获取正确的数据.)

如果你有对dataTransfer同一个拖动元素的对象的引用,那么为什么在删除数据之前你不能获取数据呢?

就是想:

  • 以前有没有人遇到Chrome的这个问题?
  • 有什么变通方法?
  • 或者,Chrome需要解决的问题是什么?

资源: HTML5拖放规范.

javascript html5 drag-and-drop

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

命名空间,argparse和用法

这真的是几个问题:

  1. 有没有理由argparse使用命名空间而不是字典?

  2. 假设我有一堂课__init__(self, init_method, *args).该init_method参数告诉init_function我想要初始化类的方式,而arg参数给出了init所需的所有参数.对于不同的方法,参数可能不同.我应该使用字典还是命名空间?

  3. 假设我使用命名空间,如何将命名空间传递给__init__()

python namespaces argparse

23
推荐指数
2
解决办法
9977
查看次数

实现自定义漂亮打印机的最佳方式

定制 pprint.PrettyPrinter

pprint模块的文档提到该方法PrettyPrinter.format旨在使自定义格式化成为可能.

我认为可以在子类中重写此方法,但这似乎没有提供让基类方法应用换行和缩进的方法.

  • 我在这里错过了什么吗?
  • 有没有更好的方法来做到这一点(例如另一个模块)?

备择方案?

我已经检查了pretty模块,看起来很有趣,但似乎没有提供一种方法来自定义其他模块的类格式而无需修改这些模块.

我认为我正在寻找的东西可以让我提供类型(或可能是函数)的映射,这些类型可以识别处理节点的例程的类型.处理节点的例程将获取一个节点并返回它的字符串表示以及子节点列表.等等.

为什么我要看漂亮的印刷品

我的目标是紧凑地打印DocBook格式的自定义格式部分xml.etree.ElementTree.

(我很惊讶没有找到更多Python支持DocBook.也许我错过了那些东西.)

我在一个名为xmlearn的客户端中构建了一些使用lxml的基本功能.例如,要转储Docbook文件,您可以:

xmlearn -i docbook_file.xml dump -f docbook -r book
Run Code Online (Sandbox Code Playgroud)

这是相当半屁股,但它让我得到了我正在寻找的信息.

xmlearn还具有其他功能,例如构建图形图像的能力以及显示XML文档中标记之间关系的转储.这些与这个问题完全无关.

您还可以执行转储到任意深度,或将XPath指定为一组起始点.XPath的东西有点过时了特定于docbook的格式,所以它并没有真正发展完善.

这仍然不是这个问题的答案.我仍然希望那里有一个可以随意定制的漂亮打印机.

python xml docbook subclass pretty-print

21
推荐指数
2
解决办法
5015
查看次数

CoffeeScript和Dart对JavaScript的改进有哪些主要区别?

两种语言都声称可以修复JavaScript的缺陷.我想了解CoffeeScript和Dart(编译为JavaScript)如何实现这一目标的主要区别.特别是,

  • 对象模型与JavaScript中的相同吗?
  • 它们是静态还是动态输入的?强弱?
  • 封闭如何在两种语言中工作?
  • 他们支持协程吗?
  • 语法的主要区别是什么?
  • 我可以使用多少本机库?
  • 我可以使用现有的JavaScript库吗?

我对个人偏好,采用率,工具支持或特定用途的有用性感兴趣.

javascript coffeescript dart

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

在pyparsing之后的下一步是什么?

作为大型纯Python应用程序的一部分,我为pyparsing开发了一个巨大的语法.我已经达到了性能调整的极限,我正处于收益递减让我开始寻找其他地方的地步.是的,我想我知道大部分提示和技巧,并且我已经将我的语法和应用程序描述为灰尘.

接下来是什么?

我希望找到一个解析器,它给我相同的可读性,可用性(我使用许多高级的pyparsing功能,如parse-actions来启动正在解析的输入的后处理)和python集成但是在10×表现.

我喜欢语法是纯Python的事实.

我所有的基本块都是正则表达式,所以重用它们会很好.

我知道我不能拥有所有东西所以我愿意放弃今天的一些功能来达到要求的10倍性能.

我从哪里开始?

python parsing pyparsing

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

包含带有HTML的SVG文件,仍然可以应用样式吗?

您可以通过embed objectsvg标记将SVG文件包含在HTML文件中.

  • 使用embedobject标记需要将图像与URL链接.(这是我更喜欢的,因为我不喜欢我的HTML代码中的所有SVG代码,所以我想保持这种方式.)
  • 使用svg标记(AFAIK)需要在HTML代码中内嵌SVG代码.

我的问题是:

如何将SVG图标,图像和其他文件包含到我的HTML文件中,而不必将整个SVG代码放入其中,并且仍然可以将样式应用于它们?通过JS应用它们也很好.

注意:

当我通过object或包含它们时embed,我似乎无法通过jQuery访问它们,即使是$("#my-svg-div").find("svg")(顺便说一下,几乎所有关于SO的答案都说我应该).我得到了undefined.

谢谢!

html javascript css jquery svg

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

如何在setup.py中正确定义package_data?

我有这个项目:

.
??? django_mysetup
?   ??? __init__.py
?   ??? template-basket
?   ?   ??? apple
?   ?       ??? app_template
?   ?       ?   ??? forms.py
?   ?       ?   ??? __init__.py
?   ?       ?   ??? models.py
?   ?       ?   ??? tests.py
?   ?       ?   ??? views.py
?   ?       ??? project_template
?   ?           ??? manage.py
?   ?           ??? project_name
?   ?               ??? __init__.py
?   ?               ??? settings.py
?   ?               ??? urls.py
?   ?               ??? wsgi.py
?   ??? templates
?       ??? example_direct.html
?       ??? example.html …
Run Code Online (Sandbox Code Playgroud)

python packaging setup.py

10
推荐指数
0
解决办法
9578
查看次数