小编hcv*_*vst的帖子

类中的Python装饰器

可以写一些像:

class Test(object):
    def _decorator(self, foo):
        foo()

    @self._decorator
    def bar(self):
        pass
Run Code Online (Sandbox Code Playgroud)

这失败了:@self中的自我是未知的

我也尝试过:

@Test._decorator(self)
Run Code Online (Sandbox Code Playgroud)

也失败了:测试未知

我想暂时更改装饰器中的一些实例变量,然后在更改它们之前运行装饰方法.

python class decorator self

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

Python尝试除了最后

看起来我还没有处理异常处理的问题.我不知所措:(以下代码有时会返回此错误:

File "applications/pingback/modules/plugin_h_pingback.py", line 190, in ping
    db(table.id==id_).update(status=status)
UnboundLocalError: local variable 'status' referenced before assignment
Run Code Online (Sandbox Code Playgroud)

我希望status总是被分配一个值.可能是抛出了一些其他异常(也许是在内部try)并且finally模糊了它?

...
try:
    server_url = self._get_pingback_server(target)
except PingbackClientError, e:
    status = e.message
else:
    try:
        server = xmlrpclib.ServerProxy(server_url)
        status = server.pingback.ping(self.source, target)
    except xmlrpclib.Fault, e:
        status = e
finally:
    db(table.id==id_).update(status=status) # <-- UnboundLocalError
...
Run Code Online (Sandbox Code Playgroud)

谢谢,HC

python web2py try-catch-finally

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

用于去除脚本标记的Python正则表达式

我有点害怕问这个因为害怕报复"你无法用正则表达式解析HTML"邪教.为什么不re.subn(r'<(script).*?</\1>', '', data, re.DOTALL)删除多行"脚本",但最后只删除两个单行"脚本"?

谢谢,HC

>>> import re
>>> data = """\
<nothtml> 
  <head> 
    <title>Regular Expression HOWTO &mdash; Python v2.7.1 documentation</title> 
    <script type="text/javascript"> 
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    '../',
        VERSION:     '2.7.1',
        COLLAPSE_MODINDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true
      };
    </script> 
    <script type="text/javascript" src="../_static/jquery.js"></script> 
    <script type="text/javascript" src="../_static/doctools.js"></script>
"""

>>> print (re.subn(r'<(script).*?</\1>', '', data, re.DOTALL)[0])
<nothtml> 
  <head> 
    <title>Regular Expression HOWTO &mdash; Python v2.7.1 documentation</title> 
    <script type="text/javascript"> 
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    '../',
        VERSION:     '2.7.1',
        COLLAPSE_MODINDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true
      }; …
Run Code Online (Sandbox Code Playgroud)

python regex

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

具有隔离范围的Angular指令"中断"其他指令(ng-required,ng-disabled)

请在Plunker上试一试 - http://plnkr.co/edit/js7WOhjgKwUeElrdNwv0?p=preview

我该怎么解决这个问题呢?与Plunker及以下的示例不同,我正在处理的指令需要一个独立的范围(或者至少当前的实现使用一个,我宁愿不重写它).

<!DOCTYPE html>
<html>

  <head>
    <script data-require="jquery@*" data-semver="2.0.3" src="http://code.jquery.com/jquery-2.0.3.min.js"></script>
    <script data-require="angular.js@*" data-semver="1.1.5" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.js"></script>

    <script>
      var app = angular.module("MyApp",[]);
      app.directive("myDirective", function(){
        return {
          //scope:{},
          link: function(){}
        };  
      });
    </script>

    <style>
      .ng-invalid{
        border: 1px solid red;
      }
    </style>
  </head>

  <body ng-app="MyApp">
    <h1>My Directive</h1>
    <p>Test the checkbox below then uncomment //scope:{} and try again.</p>
    <input type="checkbox" ng-model="isActive" />
    <input type="text" ng-model="foo" 
        my-directive 
        ng-disabled="!isActive" 
        ng-required="isActive" />
  </body>

</html>
Run Code Online (Sandbox Code Playgroud)

最好的问候,汉斯

angularjs angularjs-directive

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

使用Linux命令行工具恢复部分下载

我意识到这个问题与要求某人的歌曲名称不同,除了那个人喜欢它之外什么也记不起来.对不起,但它就像这样一首歌一样让我烦恼.

不久前,我遇到了一些命令行工具,它准备一个文件,以便让人们恢复中止的下载.如果我没记错的话,它是一个非常古老的工具,基本上它生成了第二个文件,其中包含原始块信息.生成的文件很小,可供下载.然后可以使用此元文件获取实际文件,并可以恢复损坏的下载(因此,除了p2p之外,它有点像.torrent.)

请问有谁知道这个命令的名字?如果是这样,使用它还是有意义还是rsync是更好的选择?

谢谢,HC

linux resume command download

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