小编Sha*_*kol的帖子

根据Python中两个词典的相似性返回"相似得分"?

我知道可以通过使用以下函数返回两个字符串的相似程度:

from difflib import SequenceMatcher
def similar(a, b):
    output=SequenceMatcher(None, a, b).ratio()
    return output

In [37]: similar("Hey, this is a test!","Hey, man, this is a test, man.")
Out[37]: 0.76
In [38]: similar("This should be one.","This should be one.")
Out[38]: 1.0
Run Code Online (Sandbox Code Playgroud)

但是有可能根据键的相似性及其相应的值来获得两个词典吗?不是一些共同的密钥,或者共同的密钥,而是从0到1的分数,就像上面的字符串示例一样.

我试图在这本字典中找到评级['Shane']和评级['Joe']之间的相似性得分:

ratings={'Shane': {'127 Hours': 3.0, 'Avatar': 4.0, 'Nonstop': 5.0}, 'Joe': {'127 Hours': 5.0, 'Taken 3': 4.0, 'Avatar': 5.0, 'Nonstop': 3.0}}

我使用的是Python 2.7.10

python dictionary similarity

6
推荐指数
1
解决办法
1872
查看次数

是否可以指定等待代码在Python中运行的最长时间?

我有一段代码需要从中获取输出:

gps = get_gps_data()
Run Code Online (Sandbox Code Playgroud)

虽然如果花费太长时间才能获得输出get_gps_data(),我想取消该过程并设置gpsNone。修改功能是不可能的,因此有没有办法指定等待某些代码运行并中止的最长时间(如果达到该时间,例如5秒)?

python timeout

6
推荐指数
1
解决办法
114
查看次数

我应该在Python 2.7中使用print语句或函数吗?

要在Python 2.7.10中创建我的简单脚本,我是否应该使用print函数而不是语句来使它们成为未来的证明,以防我想在仅使用Python 3的另一台计算机上或在线IDE上测试它们?什么是最适合这两种或最常见的Python版本的方法?

有什么区别?这是我学习的第一门编程语言,所以我只是不确定.现在,我有一个固定变量,我输入"2"或"3",然后代码中的if语句为任一版本执行不同的打印函数和连接方法.

- 例子 -

我现在用的是:

print "Hello world!"
Run Code Online (Sandbox Code Playgroud)

但是我应该在两个版本中使用它吗?

print ("Hello world!")
Run Code Online (Sandbox Code Playgroud)

python python-2.7 python-3.x

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

某些字符后的小写字母?

我喜欢一些string.capwords()行为的方式,以及行为的一些方式.title(),但不是单一的方式.

我需要大写的缩写,这样.title()做但不是string.capwords(),并且string.capwords()不会在单引号之后将字母大写,所以我需要两者的组合.我想使用.title(),然后我需要在撇号之后小写单个字母,只要它们之间没有空格.

例如,这是用户的输入:

string="it's e.t.!"
Run Code Online (Sandbox Code Playgroud)

我想将其转换为:

>>> "It's E.T.!"
Run Code Online (Sandbox Code Playgroud)

.title()将资本化's',并string.capwords()不会资本化"et".

python string

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