Articles of python

如何安装libpython2.7.so

我已经安装了Python 2.6.6 [17:50:21 root@data.dev:~]# which python /usr/local/bin/python 也Python 2.7.6在 [17:51:12 root@data.dev:~]# which python2.7 /usr/local/bin/python2.7 但是libpython2.7.so丢失 [17:48:52 root@data.dev:~]# locate libpython2.6.so /usr/lib64/libpython2.6.so /usr/lib64/libpython2.6.so.1.0 /usr/lib64/python2.6/config/libpython2.6.so [17:48:56 root@data.dev:~]# locate libpython2.7.so [17:49:02 root@data.dev:~]# 不知道如何解决这个问题。 谁能帮忙?

如何从Linux上的Python调用Wine的DLL?

我正在Linux中编写一个python脚本,并且需要调用Wine中的一些Windows函数。 具体来说就是AllocateAndInitializeSid和LookupAccountSidW和LookupAccountSidW ,以确定谁login到远程Windows计算机。 这些function是葡萄酒中的advapi32.dll的一部分( 编辑 :使用答案,我能够调用的function,但LookupAccountSidW只适用于本地计算机)。 我怎样才能访问这些function,或一般的葡萄酒DLL? 我试过了 >>> cdll.LoadLibrary("~/.wine/drive_c/windows/system32/advapi32.dll") 但是会导致错误: OSError:〜/ .wine / drive_c / windows / system32 / advapi32.dll:无效的ELF标头 有另一种ctypes函数可以工作,或者我可以使用一些葡萄酒界面吗?

在Python中混淆string

我有一个密码string,必须传递给一个方法。 一切工作正常,但我不觉得明文存储密码的舒适度。 有没有一种方法来混淆string或真正encryption它? 我知道混淆可以被逆向devise,但是我想我至less应该试着掩盖一下密码。 至less它不会被一个索引程序或一个stream浪的眼睛看到我的代码。 我意识到pyobfuscate,但我不希望整个程序混淆,只是一个string,可能是variables定义的整个行本身。 目标平台是GNU Linux Generic(如果这有所作为)

PyODBC:即使存在,也不能打开驱动程序

我是新来的Linux世界,我想从Python查询Microsoft SQL Server。 我在Windows上使用它,这是非常好的,但在Linux中,这是相当痛苦的。 几个小时之后,我最终成功地在unixODBC的Linux Mint上安装了Microsoft ODBC驱动程序。 然后,我用python 3环境设置了一个anaconda。 我然后这样做: import pyodbc as odbc sql_PIM = odbc.connect("Driver={ODBC Driver 13 for SQL Server};Server=XXX;Database=YYY;Trusted_Connection=Yes") 它返回: ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib '/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.0.so.0.0' : file not found (0) (SQLDriverConnect)") 我不沉没的东西是PyODBC似乎从odbcinst.ini读取正确的文件path,仍然无法正常工作。 我去“/opt/microsoft/msodbcsql/lib64/libmsodbcsql-13.0.so.0.0”和文件实际上存在! 那么为什么它告诉我,它不存在? 以下是一些可能的线索: 我在虚拟环境中 我需要“读取”权限,因为它是一个根文件path 我不知道如何解决这些问题。 谢谢 !

Python:winsound.Beep最接近的Linux和OSX版本是什么?

如果有人希望在Windows上发言,Python 2显然提供了一个有用的函数: winsound.Beep() 。 这个函数的精妙之处在于它需要指定嘟嘟声的确切频率和持续时间的参数。 这正是我想要做的,除了我不使用Windows。 所以… winsound.Beep()适用于Linux和OSX的最接近的等价物是什么,引入尽可能less的依赖关系? 请注意,我希望能够直接发言,而不是播放声音文件。 此外,我需要能够控制嘟嘟声的频率和持续时间,所以curses.beep()和print '\a'不会。 最后,我知道PyGame提供了广泛的声音function,但是由于我不需要任何PyGame的其他function,就好像使用大锤来破解一个坚果(无论如何,我试图消除依赖关系越远越好)。

在编译python时,–enable-optimizations是做什么的?

我试图在基于arm的Linux机器上编译Python 3.6, ./configure输出: 如果你想要所有的优化活动(LTO,PGO等)的发布版本,请运行./configure –enable-optimizations 。 –enable-optimizations做什么的?

创buildPython RPM

我一直在阅读为Python 2.6.4创build一个RPM。 在这个页面中: http : python setup.py bdist_rpm它说你可以使用python setup.py bdist_rpm创build当前Python的RPM。 我的问题是: 你必须在你的Python安装目录中input这个命令吗? 这个命令是否将所有已安装到RPM中的模块打包? 这是正确的命令吗? 有没有其他的build议可以让这个更简单? 好的,我使用checkinstall对此进行了整理。 我从http://www.asic-linux.com.mx/~izto/checkinstall/下载了checkinstall 。 然后我安装了软件包,但必须在/usr/local/sbin/checkinstall PATH中input/usr/local/sbin/checkinstall才能使其正常工作。 然后,我进入下一个copmmand让我的RPM目录。 yum install rpm-build 然后我进入Python模块并input这个命令: checkinstall -R –nodoc –delspec=no –exclude=/selinux python2.6 ./setup.py install 这个命令将checkinstall命令replace成安装python库,而不是通过make.py。 然后我通过checkinstall过程。 完成的RPM放在/usr/src/redhat/RPMS/i386/ 。 注意:这是LINUX RED HAT。

如何打包我正在使用的Python库,所以我可以分发他们与我的应用程序,并有尽可能less的依赖关系

如何打包我正在使用的Python库,所以我可以分发他们与我的应用程序,尽可能less的依赖关系,也不要与已经在我的系统上的不同的lib /版本冲突。 LE:对不起,我忘了指定。 我将在linux上这样做。 而我并不是指使我的应用程序像deb / rpm等可安装的文件,但如何组织我的文件,例如我将使用cherrypy和sqlalchemy我将运送这些与我的应用程序,而不是把用户通过自己安装所有的依赖的痛苦。

Python的USB检测

先抱歉我的英文! 我的环境: python:2.7.3 wxwidgets:2.9.4-1 wxpython:2.9.4-1 Ubuntu的:12.04 上下文: 我必须检测何时插入或拔出USB硬盘驱动器,并执行一些操作。 例如,当我插入磁盘来获取挂载点(例如:/ media / usb0)和系统点(例如:/ dev / sdb1)时。 我需要两个path,我不想像(subprocess:mount -l)进行系统调用。 我尝试了几种方法: – pyudev:只获取EVT_DEVICE_ADDED上的系统path(如/ dev / sdb1) – Gio(gi.repository):获取mount-added(像/ media / usb0)和系统点在第二个事件'增加卷'的挂载点,但我有问题与Gio添加和删除事件失败或有嫌疑行为取决于电脑我已经试过我的应用程序 – DBusGMainLoop(dbus.mainloop.glib):工作,但取决于计算机我试过了(所有在相同的configuration)启动2事件'DeviceAdded',有时一个DeviceChanged但有时不是当磁盘插入时。 你知道一种方式(也许3我暴露,我已经做了一些坏东西之一)来检测何时插入一个USB磁盘,调用一个方法,在这种方法得到2我需要的path? 提前致谢。 的Aurelien。

Paramiko错误:读取SSH协议标题错误

我为我的构build脚本使用Fabric。 我刚刚克隆了一个虚拟机,并创build了一个新的服务器。 结构脚本(使用下面的paramiko)工作正常一台服务器,但没有其他。 由于这是一个克隆,我不知道什么可能是不同的,但每次我运行我的结构脚本,我得到Error reading SSH protocol banner 。 此脚本正在与两台服务器上的相同用户连接。 这个脚本在所有其他服务器上工作正常,除了我刚刚克隆的这个新的服务器。 唯一不同的是完全不同范围的IP地址。 任何想法可能会导致这一点?