问题标签 [python-2.x]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - Python Textwrap - 强制“硬”中断
我正在尝试使用 textwrap 来格式化导入文件,该文件的格式化方式非常特别。基本上如下(为简单起见缩短了行长):
现在,我的代码如下:
这几乎完美地工作,但是,文本换行代码不会在 80 个字符标记处进行硬中断,它会尝试智能并在空格处中断(大约 20 个字符)。
我通过用唯一字符 (#) 替换字符串列表中的所有空格、包装它们然后删除字符来解决这个问题,但肯定有更清洁的方法吗?
注意任何可能的答案都需要在 Python 2.4 上工作 - 抱歉!
python - 如何强制 PyYAML 将字符串加载为 unicode 对象?
PyYAML 包将未标记的字符串加载为 unicode 或 str 对象,具体取决于其内容。
我想在整个程序中使用 unicode 对象(不幸的是,目前还不能切换到 Python 3)。
有没有一种简单的方法可以强制 PyYAML 始终以字符串加载 unicode 对象?我不想用!!python/unicode
标签把我的 YAML 弄得乱七八糟。
输出:['spam', 'eggs', 'bacon', u'cr\xe8me br\xfbl\xe9e', 'spam']
我想:[u'spam', u'eggs', u'bacon', u'cr\xe8me br\xfbl\xe9e', u'spam']
python - 如何在没有科学记数法和给定精度的情况下漂亮地打印 numpy.array?
我很好奇,是否有任何方法可以打印 formatted numpy.arrays
,例如,以类似于以下的方式:
如果我想打印numpy.array
浮点数,它会打印几个小数,通常采用“科学”格式,即使对于低维数组也很难阅读。但是,numpy.array
显然必须打印为字符串,即带有%s
. 有解决方案吗?
python - 一个 Python 项目可以同时使用 2.x 和 3.x 代码吗?
我将开始一个长期(约 1 年)的 Python 编程项目。我想为我的 GUI 使用 wxPython(支持 2.6),但我也想在项目的其余部分使用 3.1(开始使用 3.x 语法)。
我有什么办法可以设计一个混合 2.x 和 3.x 模块的项目吗?还是我应该硬着头皮使用 2.x(首选,因为我真的很想学习 wxPython)或 3.x?
谢谢,
麦克风
python - 为什么除法四舍五入为整数?
我试图将一组数字从 -100 规范化到 0 到 10-100 的范围,并且遇到问题只是注意到即使根本没有变量,这也不能评估我期望的方式:
浮点除法也不起作用:
如果除法的任一侧被转换为浮点数,它将起作用:
第一个例子中的每一边都被评估为一个 int,这意味着最终的答案将被转换为一个 int。由于 0.111 小于 0.5,因此舍入为 0。在我看来它并不透明,但我想就是这样。
解释是什么?
python - Python“string_escape”与“unicode_escape”
根据文档,内置字符串编码string_escape
:
产生 [s] 一个适合作为 Python 源代码中的字符串文字的字符串
...而unicode_escape
:
在 Python 源代码中产生适合作为 Unicode 文字的字符串
因此,它们应该具有大致相同的行为。但是,他们似乎以不同的方式对待单引号:
转义单引号,而string_escape
Unicode 则没有。假设我可以简单地:
...并获得预期的行为?
编辑:只是为了超级清楚,预期的行为是得到适合作为文字的东西。
python - 为什么 print 在 lambda 中不起作用?
为什么这不起作用?
这不是一个单一的陈述,还是别的什么?关于 lambda 中允许的内容,文档似乎有点稀疏......
python - 在python 2中用十六进制字符解码字符串
我有一个十六进制字符串,我想将其转换为 utf8 以插入 mysql。(我的数据库是utf8)
我怎样才能做到这一点?
python - 仅需要发电机的产量
我希望从生成器中只需要尽可能多的项目。
在下面的代码中
我收到此异常:
我已经看到了几个相关的问题,但是我对生成器的剩余物品的兴趣为零,我只希望收到我要求的数量,而不是提前提供那个数量。
在我看来,Python 确定了您想要的项目数量,但随后继续尝试读取和存储超过该数量的项目(生成ValueError
)。
我怎样才能只生产我需要的数量,而不传递我想要的数量?
更新0
为了帮助理解我认为应该可能的近似行为,这里有一个代码示例:
如果您可以改进此代码,请执行此操作。
Alex Martelli 的回答向我表明字节操作UNPACK_SEQUENCE
是造成限制的原因。我不明白为什么这个操作应该要求生成的序列也必须在长度上完全匹配。
请注意,Python 3 具有不同的解包语法,这可能会使该问题中的技术讨论无效。
python - python:打印短 utf 编码字符串时遇到问题
(以下使用Python 2.6.1)
我有 2 个字符串:
我对它们进行编码:
并尝试打印:
为什么ub
用希伯来语字符打印而ua
没有? ua
只是 的前几个字符ub
,所以似乎字符串长度是某种问题,这很奇怪。
(为了记录,这试图用 BeautifulSoup 解析网页——我不知道为什么有些段落可读而其他段落没有。)