小编jfs*_*jfs的帖子

Python中的元组究竟是什么?

我正在进行几次Pythone练习,我很难接受这个练习.

# C. sort_last
# Given a list of non-empty tuples, return a list sorted in increasing
# order by the last element in each tuple.
# e.g. [(1, 7), (1, 3), (3, 4, 5), (2, 2)] yields
# [(2, 2), (1, 3), (3, 4, 5), (1, 7)]
# Hint: use a custom key= function to extract the last element form each tuple.
def sort_last(tuples):
  # +++your code here+++
  return
Run Code Online (Sandbox Code Playgroud)

什么是元组?它们是指列表清单吗?

python tuples list

5
推荐指数
3
解决办法
1251
查看次数

用于将Windows路径更改为Unix路径的Python脚本

我想要一个脚本,可以在其中粘贴Windows路径作为参数,然后该脚本将路径转换为Unix路径并使用nautilus打开路径。

我希望能够如下使用脚本:

mypythonscript.py \\thewindowspath\subpath\
Run Code Online (Sandbox Code Playgroud)

该脚本当前如下所示:

import sys, os

path = "nautilus smb:"+sys.argv[1]

path = path.replace("\\","/")

os.system(path)
Run Code Online (Sandbox Code Playgroud)

我几乎可以工作了:)问题是我必须在参数周围添加'...,如下所示:

mypythonscript.py '\\thewindowspath\subpath\'
Run Code Online (Sandbox Code Playgroud)

任何知道我如何编写允许该参数的脚本的人都不能使用',...,例如:

mypythonscript.py \\thewindowspath\subpath\
Run Code Online (Sandbox Code Playgroud)

编辑:我想我还必须补充一点,问题是没有',则参数中的\被视为转义字符。该解决方案不一定必须是python脚本,但我希望(在Linux中)能够仅将Windows路径作为脚本的参数粘贴。

python linux bash escaping

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

时区名称以当地语言显示

有没有一种方法可以用另一种语言检索时区名称?

在Python中,如果我做这样的事情:

for tz in pytz.common_timezones_set :
 print tz
Run Code Online (Sandbox Code Playgroud)

结果是用英语写的,但如果我想用西班牙语或阿拉伯语怎么样呢?

python timezone localization internationalization pytz

5
推荐指数
2
解决办法
736
查看次数

自动从Minecraft中读取聊天文本

在Minecraft中,我希望找到一种方法来自动阅读聊天,如下图所示

我的聊天截图

为了将虚拟商店中进行的事务记录到PostgreSQL数据库中.最好使用Python.我不拥有Minecraft服务器.

我的计划是找到一种直接读取Minecraft服务器发送的数据包的方法(首选可靠性,但难度不大),或者作为备份计划可能会弄清楚如何屏蔽文本.我找到了一些资源,可以让我将字体更改为monospaced,这将提供更可靠的字体读取方式,我相信在屏幕上为每个字符创建完美一致的位置.我可以面对一个接近黑色但不完全的方向,但不愿意这样做.如上图所示,您可以看到有许多不同颜色的字体可供使用.

即使在如上所述减少它之后,我仍然不确定如何使用python将其转换为文本.

关于我的方法的任何提示?有关如何读取来自服务器的数据包的任何提示?有关从屏幕上抓取文字的提示吗?

python text screen-scraping minecraft

5
推荐指数
2
解决办法
4396
查看次数

简单的DER Cert在python中解析

哪个是用python解析带有X509证书的二进制文件以DER格式提取公钥的最佳方法.

python ssl-certificate public-key

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

关于无向图复杂性的DFS

假设我有一个带有V节点和E边的无向图.如果我用相邻列表表示图,如果我有一个x和y之间的边的表示,我还必须表示y和x之间的边.邻接清单.

我知道有向图的DFS具有V + E复杂性.对于无向图,它没有v + 2*e复杂度,因为你访问每个边2次?抱歉,如果这是一个noobish问题..我真的想了解这个想.谢谢,

graph time-complexity depth-first-search

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

在python Popen的卷曲括号

运行子进程将无法正确处理花括号

# Python 2.7.4

import subprocess
subprocess.Popen('ls src/*.cpp',shell=True): 
src/tonemap.cpp src/pch.cpp

subprocess.Popen('ls src/{t,p}*.cpp', shell=True)
ls: cannot access src/{p,t}*.cpp: No such file or directory
Run Code Online (Sandbox Code Playgroud)

相同的程序将在python 2.7.2的不同机器上运行.两个系统都使用bash shell.

你是理由,我该如何解决?

编辑:

直接从命令行调用命令会返回正确的结果:

ls src/{t,p}*.cpp
src/tonamep.cpp src/pch.cpp
Run Code Online (Sandbox Code Playgroud)

python subprocess popen python-2.7

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

bash中固定宽度整数的宽度是多少?

壳牌算法说:

评估是在固定宽度的整数中完成的,不检查溢出,但除以 0 会被捕获并标记为错误。

例子:

$ echo $(( 1 << 32 ))
4294967296
$ echo $(( (1 << 64) - 1 ))
0
Run Code Online (Sandbox Code Playgroud)

bash中shell算术的整数限制是什么?

@rici指出的是POSIX壳保证符号长整数范围(如由ISO C定义):

-2**31+1 to +2**31-1
Run Code Online (Sandbox Code Playgroud)

@约翰Zwinck指出bash源代码指示intmax_t用于

所有算术都作为intmax_t整数完成,不检查溢出

bash 是否在其文档中保证它使用intmax_t或其他一些 C 类型的整数?

bash limit

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

Python拉皮条/猴子补丁

我想做一件简单的事情:monkey-patch datetime。我不能完全那样做,因为datetime是 C 类。

所以我写了下面的代码:


from datetime import datetime as _datetime

class datetime(_datetime): def withTimeAtMidnight(self): return self.replace(hour=0, minute=0, second=0, microsecond=0)

这是在我称为 pimp 的包中名为 datetime.py 的文件中。

从我得到的错误消息中:

回溯(最近一次调用最后一次):
  文件“run.py”,第 1 行,在 
    从 pimp.datetime 导入日期时间
  文件“/home/lg/src/project/library/pimp/datetime/datetime.py”,第 1 行,在 
    从日期时间导入日期时间为 _datetime
导入错误:无法导入名称日期时间

我假设我不能有一个名为datetime从另一个名为datetime.

我应该如何继续保持我的模块和类的命名datetime

python datetime python-import

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

datetime.now() 的 Python 解析

from datetime import datetime
import time
for i in range(1000):
    curr_time  = datetime.now()
    print(curr_time)
    time.sleep(0.0001)
Run Code Online (Sandbox Code Playgroud)

我正在测试 的分辨率datetime.now()。由于它应该以微秒为单位输出,因此我预计每次打印都会有所不同。

然而,我总是得到类似的东西。

...
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.212073
2015-07-10 22:38:47.213074
2015-07-10 22:38:47.213074
2015-07-10 22:38:47.213074
2015-07-10 22:38:47.213074
2015-07-10 22:38:47.213074
2015-07-10 22:38:47.213074
2015-07-10 22:38:47.213074
2015-07-10 22:38:47.213074
2015-07-10 22:38:47.213074
2015-07-10 22:38:47.213074
2015-07-10 22:38:47.213074
...
Run Code Online (Sandbox Code Playgroud)

为什么会发生这种情况?有什么方法可以获得精确到微秒的时间戳吗?实际上我不需要微秒,但能获得 0.1 毫秒的分辨率就很好了。

===更新====

我将其与使用 time.perf_counter() 进行比较,并添加到起始datetime 日期时间导入日期时间、timedelta 导入时间 …

python windows datetime python-3.4

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