python-2.x相关内容

浮点数和字符串转换的奇怪行为

我已经在 python shell 中输入了这个: >>>0.1*0.10.010000000000000002 我预计 0.1*0.1 不是 0.01,因为我知道以 10 为底的 0.1 在以 2 为底的周期性. >>>长度(str(0.1*0.1))4 我预计会得到 20 个,因为我在上面看到了 20 个字符.为什么我得到 4? >>>str(0.1*0.1)'0.01' 好的,这 ..
发布时间:2022-01-09 10:26:55 Python

模拟 Python 的内置打印功能

我试过了 从模拟导入模拟导入 __builtin____builtin__.print = 模拟() 但这会引发语法错误.我也试过这样修补它 @patch('__builtin__.print')def test_something_that_performs_lots_of_prints(self, mock_print):# 断言东西 有没有办法做到这一点? 解决方案 prin ..
发布时间:2022-01-08 21:43:57 Python

Python 异常链

是否有在 Python 中使用异常链的标准方法?就像“由"引起的 Java 异常? 这里有一些背景. 我有一个带有一个主要异常类的模块DSError: 类 DSError(Exception):经过 在这个模块的某个地方会有: 尝试:v = my_dict[k]某事(五)除了 KeyError 作为 e:raise DSError("没有为 %s 找到密钥 %s" % (k, ..
发布时间:2022-01-08 12:00:07 Python

如何写一个简单的回调函数?

Python 2.7.10 我编写了以下代码来测试一个简单的回调函数. def 回调(a, b):打印('总和 = {0}'.格式(a+b))定义主(回调=无):print('添加任意两位数字.')如果回调 != 无:打回来主要(回调(1, 2)) 我在执行时收到: 总和 = 3添加任意两位数字. 为什么任意两位数要在Sum = 3之后?我猜是因为回调函数先执行.main()中的所有 ..
发布时间:2022-01-03 08:29:52 Python

`<>` 在 Python 中是什么意思?

我正在尝试在 Python 3.3 中使用一个旧库(可追溯到 2003 年!).当我导入它时,Python 会抛出一个错误,因为源文件中有 符号,例如: if (cnum 1000 and ntext[-1] "s":... 我想这是该语言中现已废弃的标志. 它到底是什么意思,我应该用哪个(最近的)标志替换它? 解决方案 表示不等于.它取自 ABC(python 的前身 ..
发布时间:2021-12-29 19:09:02 Python

隐式相对导入如何在 Python 中工作?

假设我有以下文件, pkg/包/__init__.pypkg/main.py # 导入字符串pkg/string.py # print("导入包的字符串模块") 现在,如果我运行 main.py,它会显示 “Package 的字符串模块已导入". 这是有道理的,它按照此链接中的声明工作一个>: “它会首先查看包的目录" 假设我稍微修改了文件结构(添加了一个核心目录): pk ..
发布时间:2021-12-29 13:51:23 Python

write() 与 writelines() 和连接字符串

所以我正在学习 Python.我正在学习课程并遇到一个问题,我不得不将大量 target.write() 压缩成一个 write(),同时有一个 "\n" 在每个用户输入变量之间(write() 的对象). 我想出了: nl = "\n";行 = line1, nl, line2, nl, line3, nltextdoc.writelines(行) 如果我尝试这样做: textdoc ..
发布时间:2021-12-29 12:13:26 Python

Python 3.x 中的新打印函数与 Python 2 打印语句相比有什么优势?

我多次听说 print 作为函数 (3.x) 比作为语句 (2.x) 更好.但为什么? 我喜欢它是一个语句,主要是因为它允许我少输入两个字符(即括号). 我很想看看在某些情况下,print 语句并没有削减它,而函数却更胜一筹. 解决方案 一切来自 Jochen 的回答 和 Sven 的回答,加上: 可以在不能使用print的地方使用print(),比如: [print( ..
发布时间:2021-12-28 08:07:05 Python

如何防止 Python 打印添加换行符或空格?

在python中,如果我说 打印'h' 我得到了字母 h 和一个换行符.如果我说 打印'h', 我得到了字母 h 而没有换行符.如果我说 打印'h',打印'm', 我得到了字母 h、一个空格和字母 m.如何防止 Python 打印空格? print 语句是同一个循环的不同迭代,所以我不能只使用 + 运算符. 解决方案 import syssys.stdout.write( ..
发布时间:2021-12-27 23:51:18 Python

如何更改 Python 2 上的 stdin 和 stdout 编码

我在同一个项目中使用 Windows 和 Linux 机器.Windows 上 stdin 的默认编码是 cp1252,Linux 上是 utf-8. 我想将所有内容更改为 utf-8.是否可以?我该怎么做? 这个问题是关于 Python 2 的;对于 Python 3,请参阅 Python 3:如何指定标准输入编码 解决方案 这是个老问题,仅供参考. 要从 stdin ..
发布时间:2021-12-27 15:56:00 其他开发

为什么我们不应该在 py 脚本中使用 sys.setdefaultencoding("utf-8") ?

我已经看到很少有 py 脚本在脚本的顶部使用它.在什么情况下应该使用它? 导入系统重新加载(系统)sys.setdefaultencoding("utf-8") 解决方案 根据文档:这允许您从默认 ASCII 切换到其他编码,例如 UTF-8,Python 运行时将在需要时使用将字符串缓冲区解码为 un​​icode. 此功能仅在 Python 启动时可用,即 Python 扫描环境时 ..
发布时间:2021-12-27 15:13:30 Python

Python:检查字符串是否包含汉字?

一个字符串可能是这个 ipath="./data/NCDC/上海/虹桥/9705626661750dat.txt" 或者这个 ipath = './data/NCDC/ciampino/6240476818161dat.txt' 我怎么知道第一个字符串包含chinese? 我觉得这个答案可能有帮助:使用 Python 查找字符串中的所有中文文本并正则表达式 但没有成功: 导入 ..
发布时间:2021-12-26 13:55:37 Python