小编Ben*_*ris的帖子

使用Python的matplotlib/basemap显示颜色

我想生成一张美国地图,并使用不同的阴影为每个州着色.有没有办法使用Python的底图?

python gis matplotlib

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

在运行时从Haskell调用C函数

我正在为Haskell中的动态编程语言构建解释器.我想添加一个简单的机制来调用C函数.在过去,我使用Haskell FFI调用我已明确声明其名称和类型的C函数; 这种方法在这里不起作用,因为解释器将不知道要在运行时调用的C函数的名称或类型.

是否可以在运行时声明和调用C函数?我应该从哪里开始?

c haskell dynamic ffi

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

在Python中为True定义值时的奇怪行为

这不是一个实际问题 - 我只是对我观察到的一些奇怪的行为感到好奇,并且想知道我是否正确地理解了"is"操作符.

这是一些可预测的Python解释器输出:

>>> True is True
True
>>> (1==1) is True
True
Run Code Online (Sandbox Code Playgroud)

现在让我们定义一个名为True的变量:

>>> True = 'abc'
>>> True == 'abc'
True
>>> True is 'abc'
True
Run Code Online (Sandbox Code Playgroud)

对于布尔运算,解释器仍将返回"True",但布尔运算的结果被认为与"abc"和"True"都不相同.

>>> (1==1)
True
>>> (1==1) is 'abc'
False
>>> (1==1) is True
False
Run Code Online (Sandbox Code Playgroud)

谁能解释这种奇怪的行为?

python boolean boolean-expression

8
推荐指数
3
解决办法
146
查看次数

从 Python 中的 ArgumentParser 解析的 args 创建 arg 字符串

如果我有一个argparser.ArgumentParser, 加上一个从 返回的命名空间parser.parse_args,是否有一种简单的方法可以将命名空间转换回 argv 列表,以便它们可以传递回程序?本质上,是否有 parse_args 的反函数?

一个示例场景:

parser = argparse.ArgumentParser()
parser.add_argument('--example', type=int, default=0)
args = parser.parse_args(argv)

args.example *= 2
new_argv = parser.generate_argv(args)
Run Code Online (Sandbox Code Playgroud)

所以如果我打电话:

python my_program.py --example 1
Run Code Online (Sandbox Code Playgroud)

我想回来:

new_argv = ['--example', '2']
Run Code Online (Sandbox Code Playgroud)

python argparse

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

Linux 上的 RssAnon、RssFile 和 RssShmem 是什么意思?

据我了解,在 Linux 上 /proc/(pid)/status 的输出为您提供以下数字,这些数字加起来就是“VmRSS”(驻留集大小):

VmRSS:     11060 kB
RssAnon:        4644 kB
RssFile:        6416 kB
RssShmem:          0 kB
Run Code Online (Sandbox Code Playgroud)

proc 的手册页有:

* RssAnon: Size of resident anonymous memory.  (since Linux 4.5).

* RssFile: Size of resident file mappings.  (since Linux 4.5).

* RssShmem: Size of resident shared memory (includes System V shared memory, mappings
                from tmpfs(5), and shared anonymous mappings).  (since Linux 4.5).
Run Code Online (Sandbox Code Playgroud)

我还是有点不清楚这些数字对应什么。一些问题:

  • 什么是“匿名记忆”?
  • 什么是“驻留文件映射”?
  • 其中哪些由物理 RAM 支持 - 所有这些?我知道 RssFile 指的是内存映射文件 - 是文件系统上映射文件的大小,还是 RAM 的成本?

linux memory

7
推荐指数
0
解决办法
3666
查看次数

单个Git存储库中的公共和私有代码

我参与的一个研究小组目前将所有代码托管在一个私有SVN存储库中.我们想打开我们的代码并将大部分代码移到Github上.问题是,一些代码是敏感的,不应该打开,但我们仍然希望它在版本控制下.目前,我们在Github上有开放代码,私有代码仍在私有SVN存储库中.有一个很好的方法在一个Git存储库中执行此操作吗?

git version-control

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

从git阶段删除"文件末尾没有换行符"的更改

我在一个大型代码库上执行了一个sed搜索/替换,并且对于每个传递过的文件,如果之前没有它,它会在最后添加一个换行符.虽然以\n结束最后一行是一个很好的惯例,但这是一个巨大的差异,与我试图完成的事情无关.这个变化影响了数百个文件,我不想手动检查这些文件git checkout.

有没有办法有选择地添加或删除暂存的更改,以便只忽略"文件末尾没有换行符"的文件?

git newline sed

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

在Python wheel中包含requirements.txt文件

为了避免在两个地方指定依赖项,我有一个Python项目,其setup.py解析一个requirements.txt文件以生成install_requires包列表.这很好用,直到我尝试将一个轮子上传到一个devpi服务器然后安装它 - 我得到的错误是找不到requirements.txt.

是否可以使用setup.py旁边的requirements.txt文件构建分发?我已经尝试过package_data和data_files,但生成的发行版仍然没有包含这些文件.

python pip setuptools devpi python-wheel

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