Articles of python

从Django运行一个shell命令

我正在开发一个Django的网页(使用Apache服务器),需要调用一个shell命令来启用/解除一些守护进程。 我正在努力做到这一点 os.system(service httpd restart 1>$HOME/out 2>$HOME/error) 而这个命令不会返回任何东西。 任何想法如何解决这个问题?

如何将远程IP传递给代理服务? – Nginx

我正在127.0.01:8000在本地运行一个服务 我正在通过使用代理: proxy_pass http://127.0.0.1:8000; 问题是我需要将用户的IP地址传递给服务。 有任何想法吗?

无法从putty运行.py文件,语法错误:单词意外(期待“)”)

我对Python和Linux都是新手,因此请尽可能简单的解释,尽可能less的假设知识,但我更愿意投入时间和精力去学习。 我有一个运行Linux的Raspberry Pi 2(Model B V1.1)。 我通过腻子与这个pi交互。 我试图创build一个简单的竞争性reflection游戏,由2个button和一个LED组成。 我的目标是让LED在短时间内亮起,而第一个按下button的玩家赢得胜利。 我正在用python写这个脚本(特别是2.7.3) 我的问题是,我无法从putty内运行任何.py文件,我总是收到相同的错误: Syntax error: word unexpected (expecting ")") 要确定问题是否是我的代码中的错误,我创build了一个非常非常简单的.py文件,以检查是否发生相同的错误,并确实如此。 所以我现在相信,即使我的代码是function,一些阻止我运行任何.py文件。 我正在使用的过程如下: 首先我从putty创build一个新的python文件: sudo nano test.py 接下来我input我的Python代码(现在非常简单,因为我无法获取任何.py文件来运行) for each in range(5): print 'hello' 然后按CTRL + O写入文件,按回车键,然后按CTRL + X退出 最后,我使用可执行文件 sudo chmod u+x test.py 并尝试运行它 sudo ./test.py 再次发生类似的错误 Syntax error: "(" unexpected 然后我决定直接在python shell中input代码 sudo python >>>for each […]

使用python计算百分比inode使用率

我正在尝试计算Python中inode使用的百分比。 这里是我的示例python代码 st = os.statvfs(path) free = (st.f_bavail * st.f_frsize) / 1024 total = (st.f_blocks * st.f_frsize) / 1024 used = ((st.f_blocks – st.f_bfree) * st.f_frsize) / 1024 total_inode = st.f_files # inodes free_inode = st.f_ffree #free inodes # df -i / Filesystem Inodes IUsed IFree IUse% Mounted on none 8257011 69850 8187161 1% / […]

用于Python脚本的桌面启动程序以错误的path启动程序(Linux)

我无法从Linux Mint 17.1 Cinnamon上创build的.desktop启动器启动python脚本。 问题是,脚本将在错误的path启动 – 即主文件夹,而不是它所在的目录。因此,它找不到其他文件夹中的其他重要文件,因此不起作用。 为了检查这种不当行为,我创build了一个简短的脚本来检查python脚本正在执行的文件夹: #!/usr/bin/env python import subprocess import time subprocess.call(["pwd"], shell=True) time.sleep(7) # to get a chance to read the output 从它自己的文件夹执行它给出的输出: /home/myusername/PythonProjects 我正在通过尼莫的菜单设置桌面启动器。 现在执行相同的脚本产生: /home/myusername 我不明白这个行为。 我怎么能创build一个工作桌面启动我的Python脚本?

从Python中添加path和调用外部程序的问题

我在“/ home / myname / mydir /”中有一个名为“foo”的可执行文件,并试图从Python调用它,但是我在这里做了一些基本的和错误的。 你可以帮我吗? import os, sys sys.path.append("/home/myname/mydir/") os.system("foo") # os.system("./foo") doesn't work either 谢谢

从txt文件中删除重复的行

我正在处理包含按行分隔的数据的大型文本文件(〜20MB)。 大多数数据项是重复的,我想删除这些重复只保留一个副本。 此外,为了使问题稍微复杂一些,重复添加一些附加信息。 在这种情况下,我需要保持包含额外信息的条目并删除旧版本。 例如,我需要从这个: BOB 123 1DB JIM 456 3DB AX DAVE 789 1DB BOB 123 1DB JIM 456 3DB AX DAVE 789 1DB BOB 123 1DB EXTRA BITS 对此: JIM 456 3DB AX DAVE 789 1DB BOB 123 1DB EXTRA BITS NB。 最后的顺序并不重要。 什么是有效的方法来做到这一点? 我可以使用awk,python或任何标准的linux命令行工具。 谢谢。

Python的ctypes从Linux上的libc调用reboot()

我试图通过ctypes从Python中的libc调用rebootfunction,我只是不能得到它的工作。 我一直在引用man 2 reboot页面( http://linux.die.net/man/2/reboot )。 我的内核版本是2.6.35。 下面是来自交互式Python提示符的控制台日志,我试图让我的机器重启 – 我做错了什么? 为什么不是ctypes.get_errno()工作? >>> from ctypes import CDLL, get_errno >>> libc = CDLL('libc.so.6') >>> libc.reboot(0xfee1dead, 537993216, 0x1234567, 0) -1 >>> get_errno() 0 >>> libc.reboot(0xfee1dead, 537993216, 0x1234567) -1 >>> get_errno() 0 >>> from ctypes import c_uint32 >>> libc.reboot(c_uint32(0xfee1dead), c_uint32(672274793), c_uint32(0x1234567), c_uint32(0)) -1 >>> get_errno() 0 >>> libc.reboot(c_uint32(0xfee1dead), c_uint32(672274793), […]

如何从python导入path中删除当前目录

我想和hg本身的mercurial仓库一起工作。 也就是说,我从https://www.mercurial-scm.org/repo/hg克隆了Mercurial,并希望在克隆的仓库中运行一些hg命令。 问题是,当在这个克隆中运行hg时, hg可执行文件尝试从这个目录加载它的python模块而不是从/usr/lib/pythonVERSION等等。据我所知,这是因为Python导入pathsys.path包含一个空string第一项可能意味着“当前目录”。 没有设置PYTHONPATH环境variables。 问题是我怎样才能防止我安装的hg导入“错误”的模块。

我该如何解决这个错误? Gtk-WARNING **:GModule …初始化检查失败:GLib版本太旧(微不匹配)

我正在用matplotlib编写一个python程序,我得到这个错误: GLib-GIO-Message:使用“内存”GSettings后端。 您的设置不会被保存或与其他应用程序共享。 (python:6304):Gtk-WARNING **:GModule(/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ibus.so)初始化检查失败:GLib> version too old (微不匹配) (python:6304):Gtk-WARNING **:加载IM上下文types'ibus'失败 (python:6304):Gtk-WARNING **:GModule(/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ibus.so)初始化检查失败:GLib版本太旧微不匹配) (python:6304):Gtk-WARNING **:加载IM上下文types'ibus'失败 (python:6304):Gtk-WARNING **:GModule(/usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules/im-ibus.so)初始化检查失败:GLib版本太旧微不匹配) (python:6304):Gtk-WARNING **:加载IM上下文types'ibus'失败 该程序完成执行,但错误不会消失。 我正在运行Ubuntu 16。 我尝试重新安装Glib,但没有任何改变。 我在网上寻找帮助,但找不到解决scheme。 我是一个noob,我不知道如何解决这个问题。 谁能帮我吗? 我真的很感激你的时间!