小编Hub*_*bro的帖子

使用 Python pdb 检查未处理异常的原因的最简单方法是什么?

我刚刚将所有单元测试数据从 JSON 转换为 YAML,现在我的代码中出现了异常。更具体地说,这是打印回溯:

回溯(最近一次调用最后一次):
  文件“tests/test_addrtools.py”,第 95 行,在 test_validate_correctable_addresses 中
    self.assertTrue(self.validator(addr), msg)
  文件“/Users/tomas/Dropbox/Broadnet/broadpy/lib/broadpy/addrtools.py”,第 608 行,在 __call__ 中
    自我验证(地址)
  文件“/Users/tomas/Dropbox/Broadnet/broadpy/lib/broadpy/addrtools.py”,第 692 行,在验证中
    if self._correction_citytypo(addr): 返回
  文件“/Users/tomas/Dropbox/Broadnet/broadpy/lib/broadpy/addrtools.py”,第 943 行,在 _correction_citytypo
    比率 = lev_ratio(old_city, city)
类型错误:比率预期为两个字符串或两个 Unicode

现在,第 943 行的文件“addrtools.py”包含了我的问题的答案。我想看到的类型和价值old_city,并city在其中引发异常的范围。我一直都有这种问题,并且使用一种快速而轻松的方法pdb来检查引发异常的范围内的本地人,将来会为我节省大量时间。


我确实尝试了在这个问题的答案中发布的解决方案,但是验尸函数将我置于python2.7/unittest/main.py(231)runTests() 中,这对我没有很大帮助。我想这是因为从单元测试代码中捕获并重新引发了异常。

python pdb

6
推荐指数
2
解决办法
1010
查看次数

如何删除内联元素之间的空格可见性?

假设我有几个内联块div标签,就像这样

<div class="image">

</div>
<div class="image">

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

类图像只是将它们的大小设置为100x100和灰色背景颜色.它们的边距和边框设置为0,但两个矩形之间有间距.

但是,如果我写这样的HTML,那么:

<div class="image">

</div><div class="image">

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

删除div之间的所有空格,间距消失.

因为我不想这样写我的HTML,所以我认为必须有一种方法可以使用CSS删除空格.只要它的可见性被删除,我不在乎是否删除,隐藏或缩小空格.

谢谢你的帮助


根据要求,JSFiddle:http://jsfiddle.net/6h3Jx/


用字间距更新:http://jsfiddle.net/6h3Jx/1/

html css whitespace inline block

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

如何从 PHP 控制台中删除文本?

我的目标是将更新进度百分比打印到控制台(在 Linux 和 Windows 中)。目前我只是每 10% 打印出百分比,但我更希望它每 1% 更新一次,而不用百分比填充屏幕。

是否可以删除在 PHP 中写入控制台的文本?

php linux windows command-line php-5.3

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

我应该如何编写带有服务器端和客户端代码的node.js Web应用程序?

我打算编写一个spine/backbone.js样式的web应用程序,它基本上只是将一个大的application.js文件传输到客户端的浏览器,该浏览器使用ajax与node.js后端进行通信.问题是我不知道如何构建这样一个项目,因为我从未见过这样一个应用程序的例子.我可以通过不同的方式来描绘一些利弊

  • 将所有内容保存在一个项目文件 服务器端和客户端代码都驻留在相同的文件夹中,这意味着它们可以共享资源,例如表单输入验证和语言文件.这似乎是一个很好的解决方案,但我不知道如何只捆绑客户端需要的代码,而不是服务器代码.总的来说,我不知道如何做到这一点.如果之前已经完成,我想看一些示例代码,甚至可能是一个git repo

  • 创建两个单独的项目.一个用于客户端,一个用于服务器.这似乎更简单直接,但在共享资源方面却不那么优雅.我必须两次编写表单输入验证等代码.

有什么想法吗?

javascript project-management node.js backbone.js spine.js

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

是否可以编写输出JSON的SQL函数?

我只是想在MySQL中编写一个函数,我可以传递一个子查询,以便输出该子查询的JSON表示.

我经常从MySQL获取大量数据,然后将其转换为JSON以获得API输出.在SQL服务器上编写一个MySQL函数来返回JSON可能会提高速度吗?

我的想象力:

query('SELECT * FROM people');

// Output:
// +----+--------+-----+
// | id | name   | Age |
// +----+--------+-----+
// |  1 | Molly  | 24  |
// |  2 | Edward | 28  |
// +----+--------+-----+

query('JSON(SELECT * FROM people)');

// Output:
// [{"id":1,"name":"Molly","Age":24},{"id":2,"name":"Edward","Age":28}]
Run Code Online (Sandbox Code Playgroud)

可能?如果有,那么我可以开始的任何线索?

php mysql sql

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

如何从解释器堆栈中获取绑定方法的类的名称?

我有一个很棒的小功能,看起来像这样:

def verbose_print(message, *args, **kwargs):
    """Prints `message` with a helpful prefix when in verbose mode

    Args:
        message (str): The message to print. Can be a format string, e.g.
            `A %s with some %s in it`
        *args: Variables for the message format
        **kwargs: Keyword variables for the message format
    """

    # Only print when in verbose mode
    if not config.verbose:
        return

    # Ready a prefix for the message
    try:
        s = inspect.stack()
        module_name = inspect.getmodule(s[1][0]).__name__
        func_name = s[1][3]
        prefix = '### …
Run Code Online (Sandbox Code Playgroud)

python callstack class

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

我可以在Python RegEx中混合字符类吗?

Python RegEx中的特殊序列(字符类)是类似于\w\d匹配一组字符的转义.

就我而言,我需要能够匹配除数字之外的所有字母数字字符.

也就是说,\w减去\d.

我需要使用特殊序列,\w因为我正在处理非ASCII字符,需要匹配"Æ"和"Ø"等符号.

有人会认为我可以使用这个表达式:[\w^\d]但它似乎不匹配任何东西,我不知道为什么.

简而言之,我如何在Python正则表达式中混合(加/减)特殊序列?


编辑:我不小心使用[\W^\d]而不是[\w^\d].后者确实匹配某些东西,包括括号和逗号,就我而言,它们不是字母数字字符.

python regex

5
推荐指数
2
解决办法
3530
查看次数

是否有可能让Python Interactive Interpreter在加载时运行脚本?

在处理项目时,我的脚本通常有一些样板代码,比如添加sys.path的路径和导入项目的模块.每次启动交互式解释器以快速检查某些内容时运行这个样板代码都很繁琐,所以我想知道是否可以将脚本传递给解释器,它将在它变为"交互式"之前运行.

python python-interactive

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

如何在不离开插入模式的情况下向上/向下滚动?

在Vim正常模式下,您可以分别按ctrl+ ectrl+ y向下和向上滚动.我正在尝试创建一个键绑定,让我也可以从插入模式执行此操作.这就是我所拥有的:

" Scroll up and down while in insert mode.
inoremap <C-e> <C-o><C-e>
inoremap <C-y> <C-o><C-y>
Run Code Online (Sandbox Code Playgroud)

这有点像预期,但它有一个很大的缺陷.它离开插入模式,滚动,然后重新进入插入模式.这在撤消,重复命令等方面是相关的,我希望能够在不离开插入模式的情况下向上和向下滚动.思考?

vim

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

为什么 Nvim 默认设置会覆盖我的 ftplugin 设置?(尼奥维姆)

当我打开 PHP 文件时,Neovim 设置nosmartindentindentexpr=GetPhpIndent().

这真是太糟糕了,因为它GetPhpIndent()完全损坏了,使编辑体验成为一场噩梦,我必须不断修复我输入的每一行的缩进。

$RUNTIME/after/ftplugin/php.lua我创建了一个包含以下内容的文件:

vim.bo.indentexpr = nil
vim.bo.smartindent = true
print("I APPLIED SOME SETTINGS!")
Run Code Online (Sandbox Code Playgroud)

我添加打印语句只是为了确认它已加载,而且确实如此。每次打开 PHP 文件时,我都会看到打印的文本。

但是,我的设置没有改变。这些设置仍然由运行时设置:

截图1 截图2

是因为我的lua文件无法工作吗?不,如果我在打开文件后获取它,我的设置会正确更新。

所以看起来 Nvim 的默认设置是在我的 ftplugin 文件之后应用的,在这种情况下 ftplugin 到底有什么意义呢?

帮助!

vim lua neovim

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