小编ger*_*rit的帖子

在Pythons内置数值类型上,repr和str总是相同吗?

reprstr相同的上内置数值类型蟒蛇(int,bool,float,和complex),还是有(深奥?)的情况,其中两个可能会产生不同的结果?

关于SO的相关问题(例如本文)关注的是如何__repr__以及__str__可能以不同方式实现,并为字符串返回不同的值,但我找不到关于数字的实际实现的任何内容.

python representation

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

Matlab有类似于主要方法的东西吗?

如果我有一个包含类定义(classdef)的Matlab源文件(m文件),有没有办法指定在运行m文件时要执行的特定代码集?我指的是整个文件,例如通过RunIDE中的按钮,shell或Matlab命令行.我并不是指手动选择要执行的代码.

Java中使用静态main方法存在类似的行为,而在Python中则存在类定义(可能在if __name__==__main__块内)的代码.

oop matlab program-entry-point

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

跳转到方法定义,不管它是在哪个类中定义的

在 Matlab 中?IDE,有没有什么简单的方法可以跳转到特定方法的定义,而不知道它是在哪个类中定义的?

对于自包含函数,我可以输入edit funcname.m. 类也是一样。但是,特定类的超类层次结构可能很大。通过使用元类,我可以找出在哪个类中定义了方法,然后打开该类,并浏览到适当的定义。这比独立函数要多得多。

从交互式提示中,是否有任何直接方法可以跳转到特定方法的定义,或者在此方法中放置断点(以便执行它会导致编辑器跳转到定义)?

ide matlab command-prompt

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

为什么元类上的.mro()有不同的签名?'type'对象的'描述符'mro'需要一个参数`

在Python中的大多数类型/类中,我可以.mro()不带参数调用.但不是type和它的后代:

In [32]: type(4).mro()
Out[32]: [int, object]

In [33]: type(type(4)).mro()
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-33-48a6f7fcd2fe> in <module>()
----> 1 type(type(4)).mro()

TypeError: descriptor 'mro' of 'type' object needs an argument
Run Code Online (Sandbox Code Playgroud)

看来我可以得到我想要的东西type(type(4)).mro(type(4)),但为什么我不能mro()像其他地方那样直接打电话?

python metaclass method-resolution-order

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

防止未网格 pcolor(mesh) 数据出现虚假水平线

当我有一段跨越反子午线的未网格纬度/经度/数据对时,经度从 -180 交换到 +180,如何防止 cartopy 绘制pcolor(mesh)填充整个地球的网格单元?我的问题与此处的问题相同,只是我使用的是cartopy而不是basemap. 对链接问题(关于basemap)的一条近 5 年的评论声称有一个cartopy解决方案,但尚未发布。

\n\n

示例代码:

\n\n
#!/usr/bin/env python3.6\n\nimport numpy\nimport matplotlib.pyplot\nimport cartopy.crs\n\nlons = numpy.array([[-174.719, -175.297, -175.883],\n       [-175.164, -175.734, -176.312],\n       [-175.594, -176.164, -176.734],\n       [-176.016, -176.578, -177.148],\n       [-176.43 , -176.984, -177.547],\n       [-176.836, -177.383, -177.938],\n       [-177.227, -177.773, -178.312],\n       [-177.609, -178.148, -178.688],\n       [-177.984, -178.516, -179.047],\n       [-178.352, -178.875, -179.398],\n       [-179.727,  179.766,  179.266],\n       [ 179.945,  179.445,  178.945],\n       [ 179.625,  179.133,  178.641],\n       [ 179.312,  178.828,  178.336],\n       [ 179.008,  178.523,  178.039],\n …
Run Code Online (Sandbox Code Playgroud)

python matplotlib cartopy

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

从N维数组中的值构造(N + 1)维对角矩阵

我有一个N维数组.我想通过将最终尺寸的值放在对角线上来将其扩展为(N + 1)维数组.

例如,使用显式循环:

In [197]: M = arange(5*3).reshape(5, 3)

In [198]: numpy.dstack([numpy.diag(M[i, :]) for i in range(M.shape[0])]).T
Out[198]: 
array([[[ 0,  0,  0],
        [ 0,  1,  0],
        [ 0,  0,  2]],

       [[ 3,  0,  0],
        [ 0,  4,  0],
        [ 0,  0,  5]],

       [[ 6,  0,  0],
        [ 0,  7,  0],
        [ 0,  0,  8]],

       [[ 9,  0,  0],
        [ 0, 10,  0],
        [ 0,  0, 11]],

       [[12,  0,  0],
        [ 0, 13,  0],
        [ 0,  0, 14]]])
Run Code Online (Sandbox Code Playgroud)

这是一个5×3×3阵列.

我的实际数组很大,我想避免显式循环(隐藏循环 …

python arrays numpy multidimensional-array diagonal

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

什么取代了 text.latex.unicode?

在我的 中matplotlibrc,我正在使用text.latex.unicodercparam,正如文档(仍然)推荐的那样:

#text.latex.unicode : False # use "ucs" and "inputenc" LaTeX packages for handling
                            # unicode strings.

text.latex.unicode : True
Run Code Online (Sandbox Code Playgroud)

但是从 Matplotlib 3.0 开始,我收到了 MatplotlibDeprecationWarning:

/group_workspaces/cems2/fiduceo/Users/gholl/anaconda3/envs/FCDR37a/lib/python3.7/site-packages/matplotlib/__init__.py:846: MatplotlibDeprecationWarning:
The text.latex.unicode rcparam was deprecated in Matplotlib 2.2 and will be removed in 3.1.
  "2.2", name=key, obj_type="rcparam", addendum=addendum)
/group_workspaces/cems2/fiduceo/Users/gholl/anaconda3/envs/FCDR37a/lib/python3.7/site-packages/matplotlib/__init__.py:846: MatplotlibDeprecationWarning:
The text.latex.unicode rcparam was deprecated in Matplotlib 2.2 and will be removed in 3.1.
  "2.2", name=key, obj_type="rcparam", addendum=addendum)
Run Code Online (Sandbox Code Playgroud)

已弃用的text.latex.unicodercparam的替代品是什么?

不幸的是,我目前似乎无法访问Matplotlib Tex Cookbook

python unicode matplotlib

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

覆盖徽章卡在“未知”上

我正在尝试使用 coveralls.io 为我的测试显示覆盖徽章,但覆盖徽章卡在“未知”上。相关的回购在这里:https : //github.com/Noah-Lc/simple-blog-rest-api 当我查看该回购的 coveralls.io 时,我看到相同的“coverage: unknown”状态:但是,个人建立被正确发送到coveralls.io:https://coveralls.io/jobs/46387537

coverage.py travis-ci coveralls

5
推荐指数
0
解决办法
405
查看次数

如何将多个警告过滤器传递给 python -W?

根据Python文档,我可以传递多个警告过滤器:

当在一行上列出多个过滤器时(如 PYTHONWARNINGS),各个过滤器用逗号分隔

但当我尝试这样做时,Python 抱怨它忽略了无效选项。在这里,我试图通过always::::并且error::RuntimeWarning::

$ python -W 'always::::,error::RuntimeWarning::' -c "print('hello, world')"
Invalid -W option ignored: too many fields (max 5): 'always::::,error::RuntimeWarning::'
Run Code Online (Sandbox Code Playgroud)

如果我跑的话它会起作用

PYTHONWARNINGS="always::::,error::RuntimeWarning::" python -c "print('hello, world')"
Run Code Online (Sandbox Code Playgroud)

但是将其作为命令行标志传递的语法是什么?

python warnings

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

使用 pandas.DataFrame.to_parquet 控制行组

要将镶木地板文件读入多个分区,应使用行组进行存储(请参阅如何使用 dask/dask-cudf 将单个大型镶木地板文件读入多个分区?)。pandas 文档描述了列的分区pyarrow 文档描述了如何编写多个行组。使用pandas DataFrame.to_parquet方法,我可以接口写入多个行组的能力,还是总是写入单个分区?如果是,如何?

虽然数据集很小(目前只有 3 GB),但我想读入多个分区,以便使用 dask 进行后续处理将使用多个核心(我可以重新分区,但这会产生额外的开销)(我可能会处理大约 10 秒的数据集)之后的 GB,仍然很小,但对于 RAM 来说太大了)。

python dataframe pandas parquet

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