Questions tagged «python»

Python是一种解释型通用高级编程语言,其设计理念强调代码的可读性。

3
哪个窗口管理器具有Python绑定?
我一直都在用Python编写代码,而我对桌面环境最感兴趣,我一直有自己想尝试的想法。 我尝试过使用python-xlib,但有关如何使用它的文档太少,而且ICCCM文档非常晦涩。所以我还没走得很远。 更重要的是,我对制作窗口管理器的兴趣不大,而对为桌面环境与其交互的应用程序感兴趣。例如任务栏。然后直接与X交谈意味着绕过WM。 所以我想知道是否有任何主要的WM具有python绑定,因此我可以与它们进行交互。我已经找到了python-metacity和python-compizsettings,但是我发现零使用它们的文档。 从Python的角度来看,总体情况有点令人沮丧。如果您有任何建议,请让我知道。

6
tmux导致水蟒使用不同的python源
好的,所以我在anaconda环境中,运行了哪个python。我懂了 /home/comp/anaconda3/envs/env1/bin/python 现在,如果我启动tmux,然后运行source activate env1,那么我会得到哪个python /home/comp/anaconda3/bin/python 即使我确实激活了我的环境。我如何让Anaconda在tmux内部看到相同的路径?
11 python  tmux 

2
如何禁用处理器的L1和L2缓存?
是否可以在Ubuntu 14.04上禁用L1和/或L2缓存(最好使用Python之类的高级语言)?如果是这样,怎么办? 另外,禁用缓存是否会在不同体系结构之间显着不同?如果是这样,我对ARM Cortex-A15更感兴趣。 编辑 在研究如何禁用缓存时,我确实从kernel.org文档中找到了/ proc / sys / vm /中的“ drop_caches”文件。 “这样做会导致内核丢弃干净的缓存,以及可回收的平板对象(如dentries和inode)。一旦删除,它们的内存就会释放。” ... “此文件不是控制各种内核高速缓存(inodes,dentries,页面高速缓存等)增长的方式。当系统上其他地方需要内存时,内核会自动回收这些对象。” 这似乎不像我正在寻找的那样,因为这不仅不似乎会禁用缓存,而且我认为虚拟内存位于操作系统内,而不位于硬件上。我的目标是禁用缓存,因此必须在其他地方(例如RAM内)寻找所需的内存。 编辑 澄清一下,我了解禁用缓存会对系统造成什么影响。但是,这是在太空应用中提高安全性关键应用可靠性的一种常用技术。以下是一些记录此现象的资源: 通过高速缓存减少嵌入式软件辐射引起的故障 在空间辐射环境中对微处理器进行地面辐射测试的指南 甚至有关于该主题的书籍: 电子中的电离辐射效应:从记忆到成像仪
10 linux  ubuntu  python  arm  cache 


4
Shell脚本中的混合代码。共享变量
该答案讨论了如何从终端中的命令行运行多行Python代码段。我注意到,即使在嵌套缩进的情况下,答案在shell脚本中也非常有效,例如, #!/bin/bash some_text="Hello world" echo $some_text cat <<EOF | python - import sys; for r in range(3): print r for a in range(2): print "hello" EOF 印刷品: 0 hello hello 1 hello hello 2 hello hello 但是,我很难在Shell脚本和Python代码段之间共享变量。 如何在bash脚本中收集python下标的输出?(例如,在变量中$output)。 如何将bash变量(例如$some_text)传递给Python脚本?
10 bash  scripting  zsh  python 

3
python == python2或python == python3吗?如何打包,分发python py2k脚本?
取决于系统,python== python2或python== python3。 可执行的Python脚本,开头为: #!/usr/bin/env python #!/usr/bin/env python2 #!/usr/bin/env python3... 对于python py3k,它在文档中提供了,我应该/可以将其与版本号一起使用,所以我这样做: #!/usr/bin/env python3 但是我发现py2k脚本有问题。 在py2k文档中,它被编写为使用:#! /usr/bin/env python, 在某些* nix-es上,python py3k是默认设置,因此python == python3。(例如ArchLinux python package,这里是python package files)。 如何打包(配置,制作)和/或准备python脚本进行分发以处理该问题? 我问有关制作易于用户运行的软件包(无需修改环境)的问题 我可以对python py2k脚本和python py3k脚本执行相同的技巧并将其设置为:#!/usr/bin/env python2吗?我可以确定每个python py2k发行版都包含python2文件,因此#!/usr/bin/env python2可以正常工作吗? 如果是,为什么不建议将其作为标准,例如在python py2k文档中?

1
PIP代表什么?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 5年前关闭。 代表什么pip?它代表Python Package Installer吗? 不,我不这么认为 PPI
10 python 

8
如何禁用Python 3.4中的新历史记录功能?
自从升级到Python 3.4之后,所有交互式命令都记录到~/.python_history。我不希望Python创建或写入此文件。 创建到的符号链接/dev/null无效,Python会删除该文件并重新创建它。该文档建议删除sys.__interactivehook__,但这也会删除制表符补全。如何禁用该历史记录文件,但仍保留制表符补全功能? 额外细节: 发行版:Arch Linux x86_64 阅读专线6.3-3 python 3.4.0-2

2
如果任何产生的子进程失败,请全部杀死并退出
在我的脚本中,我将数据集划分为input_aa,input_ab等。然后,我通过相同的Python脚本运行每个数据集,如下所示: # Execute program on each split file for part in input_*; do python3 $part & done wait 我的问题有两个:如何检测到Python进程已失败,如何检测到该错误,如何杀死所有产生的子代并失败退出脚本?
9 bash  shell  python 

1
使用apt.VersionCompare时出现“ ValueError:_system未初始化”
我编写了一个bash脚本,该脚本必须比较两个版本字符串来决定是否下载新版本。该测试依赖于Python脚本dos apt.VersionCompare(),该脚本以这种方式进行版本比较apt。 #!/usr/bin/env python import sys, apt res = apt.VersionCompare(sys.argv[1], sys.argv[2]) if res < 0: sys.exit(-1) if res > 0: sys.exit(1) sys.exit(0) 随着升级到Ubuntu 14.4,此功能停止工作。 我尝试按照/programming/4957514/更改脚本,如下所示: #!/usr/bin/env python import sys, apt_pkg res = apt_pkg.version_compare(sys.argv[1], sys.argv[2]) if res < 0: sys.exit(-1) if res > 0: sys.exit(1) sys.exit(0) 但这给了我 ValueError: _system not initialized。如何解决?还是有更好的方法来比较版本apt?
9 apt  python 

2
如何在Ubuntu 14.04中安装Meld 3.11?
我正在尝试让3.11在Ubuntu 14.04上工作 我尝试遵循以下方法” cd ~ git clone https://git.gnome.org/browse/meld cd meld sudo ln -s ~/meld/bin/meld /usr/bin/meld 但是当我在终端中运行融合时,出现以下错误 Traceback (most recent call last): File "/usr/bin/meld", line 223, in <module> setup_settings() File "/usr/bin/meld", line 197, in setup_settings cwd=melddir) File "/usr/lib/python2.7/subprocess.py", line 522, in call return Popen(*popenargs, **kwargs).wait() File "/usr/lib/python2.7/subprocess.py", line 710, in __init__ …

5
如何在Ubuntu 10.04上升级pip?
在Ubuntu 10.04上,我曾经apt-get install pip安装过,pip之后又安装了django。然后我试图卸载django与pip通过pip uninstall django它可以给我: pip: error: No command by the name pip uninstall 通过做一些研究是因为我使用的是旧版本。 $pip --version pip 0.3.1 from /usr/lib/python2.6/dist-packages (python 2.6) 我首先意识到,pip当我安装了错误版本的django并尝试使用卸载时,此版本的尚未卸载 pip uninstall django 并最终以 pip: error: No command by the name pip uninstall 从另一篇文章: pip 0.3.1已有两年以上的历史了,并且确实不包含卸载命令。点的当前版本是1.0.1。 我认为您使用的是操作系统打包的pip版本;这些往往已经过时了。在最近几年中,已经修复了许多错误,并添加了功能。 那么在Ubuntu 10.04上升级它的正确方法是什么,以便我可以访问该uninstall命令?
9 linux  ubuntu  python  pip 

3
是否可以基于查找在BIND中执行脚本
是否可以将BIND设置为我的本地网络上的DNS服务器,并在查找时制作执行脚本? 我想根据传入的DNS查找执行Python或Bash脚本,我该如何解决呢? 如果可以,请告诉我如何,如果不能,请告诉我在Ubuntu上运行的其他DNS服务器实现中是否可行。 非常感谢你。
9 ubuntu  python  bind 

2
如何在Shell中管理大量文件?
$ ls ./dir_with_huge_amount_of_files/errors/ 假设目录中充满了带有unix时间戳的图片,我的意思是用GB甚至更多来衡量很多。诸如此类的Shell命令ls将获得溢出样式的警告,因为它们并非设计用于处理数百万(或更多)图片。如何管理如此大量的文件?例如,如果要在中间找到图片(根据名称和创建时间中的时间戳记),是否有某些文件系统提供内置的搜索功能?您将使用哪些命令?我尝试了舒适ls和find带有必要的标志,但是它们要么很慢,要么生成警告,因此我认为我需要更好的文件系统或db或类似的东西来对图片进行预索引。我基本上需要一个阵列,照片的inode应该按时间顺序放置在该阵列上。怎么做?以后,可以添加带有unix时间戳的元数据。 [更新] 当前答案存在严重缺陷,人们只是在没有经验检验的情况下发布答案排序。如果他们测试了他们的建议,他们可能会失败。因此,我为您创建了一个命令行工具,您可以通过该工具创建沙箱来创建大量文件,并像对1e7数量的文件一样测试您的建议。生成文件可能需要很长时间,因此请耐心等待。如果有人知道更快的方法,请编辑代码。键入python code.py --help以获取帮助。玩得开心! 使用示例创建很多脏文件 $ ls ./data2 ls: ./data2: No such file or directory $ python testFill.py -n 3 -d 7 $ tree data2/ data2/ |-- 0 | |-- 1302407302636973 | |-- 1302407302638022 | `-- 1302407302638829 |-- 1 | |-- 1302407302639604 | |-- 1302407302641652 | …

1
获取“ python-keyring”以停止提示输入“ encrypted keyring”密码
情况: 我按照以下说明设置了Mercurial Keyring Extension。 在Ubuntu 12.04.4(精确)计算机上,它可以按照说明完美运行。提示输入一次密码,现在无需输入用户名或密码即可进行“ hg pull” /“ hg clone”等操作。 在Ubuntu 14.04.1(可信任)计算机上,我必须通过指定安装“ mercurial-keyring” 0.6.0使其稍稍偏离说明以使其正常工作(遵循此处的建议,但最终也涉及一些故障排除) 。这是可行的,但是每次提示:“请输入加密密钥环的密码:”,因此不理想。 题: 如何获得“ python-keyring”以停止每次提示输入加密的keyring密码?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.