小编Jon*_*Jon的帖子

Python:如何在sphinx中定义应使用哪些.rst文件和目录?

如何在sphinx中定义应使用的.rst文件和目录?

我想在测试/构建/文档脚本中包含一个自动文档生成器。 在我的工作空间中执行了sphinx-quickstart,并创建了一个index.rst文件。当sphinx使用重组的文本文件作为文档时,我在工作区中导航并使用sphinx-autogen手动创建它们。结果进入了task.rst文件(见下文)。

当我使用“ make html”时,我会收到一些警告:

警告:自动模块的无效签名(u'tasks / add_to_config')

警告:autodoc无法导入/查找模块'tasks.add_to_config',它报告错误:“没有名为wl_build.tasks的模块”,请检查您的拼写和sys.path

警告:不知道要导入哪个模块以自动记录u'tasks / add_to_config'(尝试在文档中放置“ module”或“ currentmodule”指令,或给出明确的模块名称)

...

我的index.rst

Welcome to build's documentation!
====================================

Contents:

.. toctree::
   :maxdepth: 2

.. automodule:: tasks/add_to_config
   :members:

.. automodule:: tasks/build_egg
   :members:   
Run Code Online (Sandbox Code Playgroud)

任务

tasks Package
=============

:mod:`tasks` Package
--------------------

.. automodule:: tasks.__init__
    :members:
    :undoc-members:
    :show-inheritance:

:mod:`add_to_config` Module
---------------------------

.. automodule:: tasks.add_to_config
    :members:
    :undoc-members:
    :show-inheritance:

:mod:`build_egg` Module
-----------------------

.. automodule:: tasks.build_egg
    :members:
    :undoc-members:
    :show-inheritance:
Run Code Online (Sandbox Code Playgroud)

python documentation restructuredtext python-sphinx

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

在python中接受输入直到换行

我是一个蟒蛇初学者.我想尝试接受用户的输入,只要他/她愿意.当单独按下回车键时,程序应停止接受输入.

那是

25
65
69
32 
   #stop here since the enter key was pressed without any input
Run Code Online (Sandbox Code Playgroud)

我想出了以下代码......

a = []
while 1:

    b = input("->")
    if(len(b)>0):
        a.append(b)
    else:
        break
Run Code Online (Sandbox Code Playgroud)
  1. 有没有其他有效的"pythonic"方法呢?

  2. 虽然这与python 3.3完美配合,但它不适用于python 2.7(其中input()由raw_input()函数替换).屏幕只是保持愚蠢而没有任何反应.这是为什么?

  3. 是否有任何内置函数,我可以将字符串转换回整数!?

python

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

如何将外部 Python 文件添加到重构的文本文档中?

我想使用 Sphinx 和重组文本写一本书。由于大部分内容都是用 Python 编写的解决方案,我想将文本和代码分开。

是否有命令可以将外部 python 脚本添加到我的重组文本文档中?

我尝试使用

.. code-block:: python
    .. include:: unittest_exp1.py
Run Code Online (Sandbox Code Playgroud)

.. code-block:: python
    .. file:: unittest_exp1.py
Run Code Online (Sandbox Code Playgroud)

python restructuredtext python-sphinx

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

正则表达式以转义正则表达式

昨天,我需要在正则表达式中添加文件路径,创建如下模式:

"some_pattern/%s/more_pattern" % some_path
Run Code Online (Sandbox Code Playgroud)

在开始时,正则表达式不匹配,因为some_path包含几个正则表达式特定符号,如?..作为一个快速解决我取而代之的是[?]{1}.\..

但是,我问自己是否没有更可靠或更好的方法来清除正则表达式特定符号中的字符串.

  • Python标准库是否支持此类功能?
  • 如果没有,您是否知道正则表达式以识别所有正则表达式符号并通过替换符清除它们?

python regex

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

Scala:Tail Recursion和ListBuffer

我正在学习Scala,在这样做的过程中,我遵循了Brien的15个练习(http://www.knowing.net/index.php/2006/06/16/15-exercises-to-know-a-programming -language-part-1 /)在第二个练习中,我应该实施哈尔变换.我实现了大部分内容但是在尾递归的返回值上花费了几个小时.由于编译器没有编译++- 或者更确切地说是行haar(averages) ++ haar(averagesD).

  • 我在递归函数中做错了什么?
  • 你能否就我的代码给我其他反馈?

码:

import scala.collection.mutable.ListBuffer
import scala.annotation.tailrec

object haarWavelet2 {

  def avg(tpl:Tuple2[Double, Double]):Double = (tpl._1 + tpl._2) / 2.
  def avgD(tpl:Tuple2[Double, Double]):Double = (tpl._1 - tpl._2) / 2
  def total_avg(nums:ListBuffer[Double]):Double = nums.sum / nums.length

  @tailrec 
  def haar(nums:ListBuffer[Double]):ListBuffer[Double] = {

    if (nums.length == 1) {return nums}

    val buffer = new ListBuffer[Tuple2[Double, Double]]
    for (i <- 0 to nums.length-1 by 2) buffer.append((nums(i), nums(i+1)))

    val averages = for(tpl <- buffer) yield …
Run Code Online (Sandbox Code Playgroud)

scala tail-recursion

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

如何在Tornado中创建几个websocket聊天?

我正在尝试使用几个聊天创建一个Tornado应用程序.聊天应该基于HTML5 websocket.Websockets很好地沟通,但我总是遇到每个消息被发布两次的问题.

该应用程序使用四个类来处理聊天:

  • Chat包含到目前为止的所有书面消息以及包含所有waiters应通知的列表

  • ChatPool用作新Websockets的查找 - 当没有需要的人scratch_id或返回现有的聊天实例时,它会创建一个新的聊天.

  • ScratchHandler 是所有HTTP请求的入口点 - 它解析基本模板并返回客户端的所有详细信息.

  • ScratchWebSocket 查询数据库以获取用户信息,设置连接并通知聊天实例是否必须传播新消息.

如何防止多次发布消息?如何使用龙卷风构建多聊天应用程序?

import uuid
import tornado.websocket
import tornado.web
import tornado.template

from site import models
from site.handler import auth_handler

class ChatPool(object):

    # contains all chats

    chats = {}

    @classmethod
    def get_or_create(cls, scratch_id):

        if scratch_id in cls.chats:
            return cls.chats[scratch_id]
        else:
            chat = Chat(scratch_id)
            cls.chats[scratch_id] = chat
            return chat


    @classmethod
    def remove_chat(cls, chat_id):

        if chat_id not in cls.chats: return
        del(cls.chats[chat_id])


class Chat(object):

    def __init__(self, scratch_id): …
Run Code Online (Sandbox Code Playgroud)

python html5 tornado websocket

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

为什么我的正则表达式匹配但不捕获组?

我试图从以下字符串中提取信息:

//YES: We got a match.
Run Code Online (Sandbox Code Playgroud)

我想提取定义两个组的信息

  • 介于//和之间的一切:
  • 其余的都在后面 :

模式匹配正确,但我无法提取组.

String example = "//YES: We got a match.";
String COMMENT_PATTERN = "//(\\w+):(.*)";
Pattern pattern = Pattern.compile(COMMENT_PATTERN);

example.matches(COMMENT_PATTERN);            // true
Matcher matcher = pattern.matcher(example);
matcher.group(1);                             // raises an exception
Run Code Online (Sandbox Code Playgroud)

我也尝试过命名组:

String COMMENT_PATTERN = "//(?<init>\\w+):(?<rest>.*)";
...
matcher.group("init");                        // raises an exception
Run Code Online (Sandbox Code Playgroud)

为什么我的模式无法提取指定的组?

java regex

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

如何重用通配符找到的模式?

我想将所有.swf文件转换mp4为某个目录中的文件。我使用*通配符来标识.swf以文件夹 ->结尾的所有文件*.swf。所以,假设我有几个视频:

  • 视频1.swf
  • video2.swf

我想在新命名中重用找到的名称,这里video1.mp4video2.mp4我的 bash 示例:

ffmpeg -i *.swf -vcodec mpeg4 *.mp4
Run Code Online (Sandbox Code Playgroud)

如何重用通配符找到的模式?

bash

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

有没有办法只执行doctests,忽略打印函数调用?

假设,我的函数返回一个值并且有很多print语句(可能是100或更多).

有没有办法运行doctest,以便可以忽略/跳过所有其他打印工作(我熟悉该+SKIP指令,用于跳过doctest示例),即当我执行我的函数(或运行我的模块作为脚本)与doctests :

python mymodule.py
Run Code Online (Sandbox Code Playgroud)

要么:

python -m doctest mymodule.py
Run Code Online (Sandbox Code Playgroud)

我应该得到:

  • 没有,如果成功; 要么
  • 任何测试示例失败的错误消息;

没有别的.运行doctest不应该给我一个充满这些print函数调用的输出/文本的终端窗口.

请不要建议使用单元测试(例如unittest)因为它会杀死问题的本质.

python testing doctest python-3.x

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

Apache Poi 生成 xlsx 文件速度缓慢

我从HSSFWorkbook切换到XssFWorkbook,创建 Excel 的性能正在下降。我搜索了又搜索,发现 create 上的糟糕性能xlsx是一个已知问题。如果我尝试创建一个大约 1000 行的文件需要 3-4 分钟,这太多了。

有没有办法提高速度?

谢谢!

performance xlsx apache-poi

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