小编neu*_*ino的帖子

Sphinx autodoc集成了装饰属性

我开始使用Sphinx来记录我的sqlalchemy驱动的应用程序.

SA在属性操作中的一个典型用法是使用hybrid-property装饰器.

现在我的问题是我没有获得doc条目name:

class User(GeneralTable):
    '''User'''
    ...
    @hybrid_property
    def name(self):
        '''
        User name

        :rtype: unicode
        '''
        if self._name is None:
            return 'anonymous'
        else:
            return self._name

    @name.setter
    def name(self, name):
        '''
        :type name: unicode
        '''
        self._name = name
Run Code Online (Sandbox Code Playgroud)

hybrid_property改为标准时,property我会记录下来.

有没有办法扩展Sphinx采用hybrid_property相同的property行为?

我目前的解决方法是.. attribute::User类doc中添加一个名称条目.

python sqlalchemy properties decorator python-sphinx

6
推荐指数
0
解决办法
889
查看次数

XSD:minInclusive和属性在一起

看来我不能轻易地为这个简单的XML提供XSD声明

<root>
    <weekday name="Sunday">1</weekday>
</root>
Run Code Online (Sandbox Code Playgroud)

其中weekday是一个受限制的int,从1到7,其name属性为string类型

有什么建议?

感谢您的支持!

xml xsd

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

在 SciTE 中重新格式化 80 列文本(或者更好的是 LaTeX)

我最近在 Lix 这样的所见即所得编辑器的帮助下开始研究 LaTeX。现在我开始在 Sci-TE 中编写 tex 文件,它已经具有语法高亮显示,并且我调整了 tex.properties 文件以在 Windows 中工作,显示 Go 上的预览 [F5]

Lyx 所做的一件漂亮的事情(用普通文本编辑器很难实现)就是将文本格式化为 80 列:我可以写一个段落,并在每次到达边缘列附近时按回车键,但如果在初稿之后,我想要在这里或那里添加或删除一些单词,我最终会破坏布局并不得不重新排列换行符。

在 Sci-TE 中拥有一个工具会很有用,这样我就可以选择我添加或删除了一些单词的文本段落,并将其重新排列为 80 列。可能不适用于整个文档,因为它可能会破坏一些预期的换行符。

也许我可以轻松地为 geany 编写一个 Python 插件,我看到 vim 有类似的东西,但我想知道它在 Sci-TE 中是否也可能。

word-wrap scite

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

将正则表达式解析为Word

我正在构建一个语法分析器,以对使用点表示法标识的对象执行简单的操作,如下所示:

DISABLE ALL;
ENABLE A.1 B.1.1 C
Run Code Online (Sandbox Code Playgroud)

但在DISABLE ALL关键字ALL中却匹配为3,Regex(r'[a-zA-Z]') => 'A', 'L', 'L'我用来匹配参数。

如何使用正则表达式制作单词?我无法A.1.1使用Word的AFAIK

请参见下面的示例

import pyparsing as pp

def toggle_item_action(s, loc, tokens):
    'enable / disable a sequence of items'
    action = True if tokens[0].lower() == "enable" else False
    for token in tokens[1:]:
        print "it[%s].active = %s" % (token, action)

def toggle_all_items_action(s, loc, tokens):
    'enable / disable ALL items'
    action = True if tokens[0].lower() == "enable" else False
    print "it.enable_all(%s)" …
Run Code Online (Sandbox Code Playgroud)

python pyparsing

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

formencode Schema动态添加字段

例如,让我们Schema以网站管理员设置所请求电话号码数量的用户为例:

class MySchema(Schema):
    name = validators.String(not_empty=True)
    phone_1 = validators.PhoneNumber(not_empty=True)
    phone_2 = validators.PhoneNumber(not_empty=True)
    phone_3 = validators.PhoneNumber(not_empty=True)
    ...
Run Code Online (Sandbox Code Playgroud)

不知怎的,我以为我可以做到:

class MySchema(Schema):
    name = validators.String(not_empty=True)
    def __init__(self, *args, **kwargs):
        requested_phone_numbers = Session.query(...).scalar()
        for n in xrange(requested_phone_numbers):
            key = 'phone_{0}'.format(n)
            kwargs[key] = validators.PhoneNumber(not_empty=True)
        Schema.__init__(self, *args, **kwargs)
Run Code Online (Sandbox Code Playgroud)

自从我在FormEncode文档读到:

验证器使用实例变量来存储其自定义信息.您可以使用子类化或普通实例化来设置它们.

Schema在docs中作为复合验证器调用,并且是一个子类,FancyValidator所以我猜它是正确的.

但是这不起作用:简单地添加phone_n被忽略并且仅name是必需的.

更新:

我也尝试了覆盖__new__,__classinit__然后在没有成功的问题之前......

python forms formencode

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

如何在后台单声道运行exe

好的,所以我有一个 .net exe,当我输入mono myexe.exe. 但是,如果我想使用另一个命令或关闭终端窗口,应用程序将停止执行。

我试过使用mono myexe.exe &它运行并显示 [8] 20078 等,但是一旦我输入其他内容,它就会显示 [8]+ Stopped,然后执行我输入的命令。

有任何想法吗?

c# unix linux debian

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

如果没有提供文件名,则回退到stdout

我有一个脚本接受一个文件名作为参数而不是打开它并写一些东西.

我使用with声明:

with open(file_name, 'w') as out_file:
    ...
    out_file.write(...)
Run Code Online (Sandbox Code Playgroud)

sys.stdout如果没有file_name提供,我现在想写什么?

我是否一定需要在函数中包装所有操作并在之前设置条件?

if file_name is None:
    do_everything(sys.stdout)
else:
    with open(file_name, 'w') as out_file:
        do_everything(out_file)
Run Code Online (Sandbox Code Playgroud)

python stdout file

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

gcloud 应用程序部署抱怨缺少临时存储桶

我已经使用了数月或数年来删除stagingartifacts存储桶gcloud app deploy,以节省计费成本。这些临时文件永远留在那里,我会为此付费。

\n

它一直有效,直到今天早上我收到此错误:

\n
ERROR: (gcloud.app.deploy) B instance [staging.my-proj-id.appspot.com] not found: The specified bucket does not exist.\n
Run Code Online (Sandbox Code Playgroud)\n

我尝试重新创建存储桶,但我不被允许,因为我应该证明该存储桶的所有权staging.my-proj-id.appspot.com域 \xe2\x80\x94 的所有权,但我没有。

\n
AccessDeniedException: 403 You must verify site or domain ownership\n
Run Code Online (Sandbox Code Playgroud)\n

我陷入困境,需要部署重要的更改

\n

google-app-engine google-cloud-storage google-cloud-platform gcloud

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

从textarea删除顶行的最新(和快速)方法

我有一个显示最后一个网页,1000通过AJAX日志文件的行然后更新每x秒钟加载新的内容(如果有的话),并追加到textarea的使用$('#log').append(new_data),排序的tail -f.

一段时间后,如果添加太多行并且页面变慢或无响应,则会出现问题.

所以我想限制行数,比如5000,所以这意味着我应该:

  • 取回 new_data
  • 计算 overflow = 5000 - lines_ in_new_data - lines_in_textarea
  • 如果从textarea中overflow > 0删除第一overflow
  • 将new_data附加到textarea

在我的脑海里,这涉及一个或多个split('\n')两者的textareanew_data值,则使用数组的长度和切片,但我想如果有一个整洁的或更好的方式来做到这一点.

javascript jquery textarea

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

在金字塔中的mako模板中使用Webhelpers

如何在Pyramid应用程序中的Mako模板中使用Webhelpers?


在Pylons中,我h在我的模板中使用了全局辅助变量,因此我可以简单地执行:

${h.stylesheet_link("/css/default.css")}
Run Code Online (Sandbox Code Playgroud)

鉴于我stylesheet_linkwebhelpers.html.tagsPylons 进口lib/helpers.py

我不想和Akhet一起去复制完整的Pylons行为,但我只是想获得一些基础(推荐?)使用的(cite)正式认可的软件包,而不是Pyramid附加软件.

python mako pyramid akhet

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