Articles of python 3.x

IDLE不能导入Tkinter。 您的Python可能没有configuration为Tk

我正在运行Ubuntu 10.10,并且今天安装了Python 3.2。 系统已经在运行Python 2.6。 我在terminalinput了idle3.2,它给了我: IDLE不能导入Tkinter。 您的Python可能没有configuration为Tk。 所以我search堆栈溢出 (和在其他地方)的解决scheme,我安装了python-tk ,我重新检查,我有tclsh在系统上,但我仍然无法设法打开idle3.2 。 任何input将不胜感激。

在python中从键盘读取原始input

我试图让我的键盘在Python中的原始input。 我有一个带有可编程按键的罗技游戏键盘,但罗技不提供Linux驱动程序。 所以我想我可以(尝试)写我自己的驱动程序。 在认为解决scheme可能是这样的: with open('/dev/keyboard', 'rb') as keyboard: while True: inp = keyboard.read() -do something- 英语不是我的母语。 如果您发现错误,请纠正。

Linux的python3 – 无法打开库“SQL Server”

我正在尝试连接到Microsoft Azure SQL服务器数据库。 这是我如何连接: conn = pyodbc.connect('DRIVER={SQL Server};SERVER=%s' % (self.config.get("Sql", "DataSource")), user= self.config.get("Sql", "UserId"), password=self.config.get("Sql", "Password"), database=self.config.get("Sql", "Catalog")) 在处理此行时出现错误。 错误: pyodbc.Error: ('01000', "[01000] [unixODBC][Driver Manager]Can't open lib 'SQL Server' : file not found (0) (SQLDriverConnect)") 不知道为什么会发生这种情况,有什么想法?

在Python 3中给出一个套接字和inode的进程ID

/ proc / net / tcp给我一个套接字的本地地址,端口和inode号码(例如0.0.0.0:5432和9289)。 鉴于上述信息,我想find特定进程的PID。 可以打开/ proc中的每个编号文件夹,然后使用诸如“$ sudo ls -l / proc / * / fd / 2> / dev / null | grep socket”等shell命令检查符号链接是否匹配套接字/ inode编号。 但是,这似乎在计算上比所需的更昂贵,因为任何给定系统上的进程的<5%都具有开放的TCP套接字。 find已打开给定套接字的PID的最有效方法是什么? 我宁愿使用标准库,而我目前正在用Python 3.2.3进行开发。 编辑:从问题中删除代码示例,因为它们现在包含在下面的答案中。

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

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

Datastax Python cassandra驱动程序在Ubuntu上构build失败

我试图在Ubuntu 14.04.5上安装Datastax Python Cassandra驱动程序。 LTS。 安装成功,但随后尝试使用它失败,出现错误: 欢迎来到Ubuntu 14.04.5 LTS(GNU / Linux 3.13.0-91-generic x86_64) 〜$ python3 –version Python 3.5.2 〜$ python3 -c'import cassandra; 打印(卡桑德拉.__ version__)” 3.7.0 〜$ python3 cassandra_loader.py 回溯(最近一次通话最后): 文件“cassandra_loader.py”,第7行,在 从cassandra_tools导入transform_record,QueryManager 文件“../lib/cassandra_tools.py”,第6行, 从cassandra.cluster导入集群 ImportError:/usr/local/lib/python3.5/site-packages/cassandra/cluster.cpython-35m-x86_64-linux-gnu.so:undefined symbol:PyException_Check 相同的安装过程和相同的代码在RedHat上运行良好。 Googlesearch错误代码不会返回任何内容。 任何人都有可能是什么问题的想法?

在Ubuntu上安装python模块

我需要在Ubuntu Linux 12.04上安装一些python模块。 我想pygame和livewires,但我不知道如何安装它们。 我有一个livewires的py文件,它已被特别编辑(从我正在阅读的一本书中),我想安装它,但我不知道如何,我也想安装pygame。

在linux机器上检测python 3中按键的最简单方法是什么?

现在我正在尝试用一个覆盆子pi和一个makey makey做一个小代码。 makey makey是一个小板,当某些联系人通电时,它就像一个USB键盘一样。 我的问题是什么是最简单的方法来检测python脚本内的按键。 我知道使用GPIO引脚会更容易,但现在我正在寻找这个。 我已经看到使用从msvcrt使用getch()(从我的理解是只有Windows),使用pygame.key,并使用getKey的例子。 哪一个最容易使用? 有没有可以检测到被按下的钥匙和钥匙被释放? 伪代码(…是它叫什么?) import whatever needs importing if the "W" key is pressed: print ("You pressed W") elif the "S" is pressed: print ("You pressed S") 等等。 谢谢。

使用subprocess.Popen通过SSH或SCP发送密码

我试图使用subprocess.Popen运行一个scp (安全复制)命令。 login要求我发送密码: from subprocess import Popen, PIPE proc = Popen(['scp', "user@10.0.1.12:/foo/bar/somefile.txt", "."], stdin = PIPE) proc.stdin.write(b'mypassword') proc.stdin.flush() 这立即返回一个错误: user@10.0.1.12's password: Permission denied, please try again. 我确定密码是正确的。 我可以通过在shell上手动调用scp来轻松validation它。 那么为什么这不工作? 请注意,对此有许多类似的问题,询问subprocess.Popen 。打开并发送自动SSH或FTPlogin密码: 我怎样才能从一个Python脚本在Linux设置用户密码? 使用subprocess发送密码 这些问题的答案不起作用和/或不适用,因为我正在使用Python 3。

大文件调用close()后不立即刷新到磁盘?

我用我的Python脚本创build大文件(超过1GB ,实际上有8个)。 我创build它们后,我必须创build将使用这些文件的过程。 该脚本如下所示: # This is more complex function, but it basically does this: def use_file(): subprocess.call(['C:\\use_file', 'C:\\foo.txt']); f = open( 'C:\\foo.txt', 'wb') for i in 10000: f.write( one_MB_chunk) f.flush() os.fsync( f.fileno()) f.close() time.sleep(5) # With this line added it just works fine t = threading.Thread( target=use_file) t.start() 但是应用程序use_file行为就像foo.txt是空的。 有一些奇怪的事情在进行: 如果我在控制台执行C:\use_file C:\foo.txt (脚本完成后),我会得到正确的结果 如果我在另一个python控制台手动执行use_file() […]