小编Ara*_*Fey的帖子

使用python从列表中创建字典

我需要将列表转换为字典,如下所示.奇数元素具有键,偶数元素具有值.

x = (1,'a',2,'b',3,'c') - > {1: 'a', 2: 'b', 3: 'c'}

def set(self, val_): 
    i = 0 
    for val in val_: 
        if i == 0: 
            i = 1 
            key = val 
        else: 
            i = 0 
            self.dict[key] = val 
Run Code Online (Sandbox Code Playgroud)

获得相同结果的更好方法是什么?

添加

i = iter(k)
print dict(zip(i,i))
Run Code Online (Sandbox Code Playgroud)

好像在起作用

python dictionary list

27
推荐指数
4
解决办法
8万
查看次数

'语法错误:语法无效'没有明显原因

我一直试图修复,无法找到错误不断出现的原因.Pmin,Pmax,w,fi1和fi2都被赋予了有限值

guess=Pmin+(Pmax-Pmin)*((1-w**2)*fi1+(w**2)*fi2)
Run Code Online (Sandbox Code Playgroud)

当我从代码中删除此行时,在下一行代码中出现相同的错误,再次无缘无故我能想到

编辑:这是我所指的代码块:

def Psat(self, T):
    pop= self.getPborder(T)
    boolean=int(pop[0])

    P1=pop[1]
    P2=pop[2]
    if boolean:
        Pmin = float(min([P1, P2]))
        Pmax = float(max([P1, P2]))
        Tr=T/self.typeMolecule.Tc
        w=0.5*(1+scipy.tanh((10**5)*(Tr-0.6)))
        fi1=0.5*(1-scipy.tanh(8*((Tr**0.4)-1)))
        fi2=0.460*scipy.sqrt(1-(Tr-0.566)**2/(0.434**2)+0.494

        guess = Pmin+(Pmax-Pmin)*((1-w**2)*fi1+(w**2)*fi2)   #error here

        solution = scipy.optimize.newton(funcPsat,guess, args=(T,self))
Run Code Online (Sandbox Code Playgroud)

python syntax-error spyder

25
推荐指数
2
解决办法
29万
查看次数

如何将值与反斜杠进行比较?

if (message.value[0] == "/" or message.value[0] == "\"):
    do stuff.
Run Code Online (Sandbox Code Playgroud)

我确定这是一个简单的语法错误,但这个if语句有问题.

python syntax

23
推荐指数
2
解决办法
17万
查看次数

是否检查编写的代码是否在python 2.7或3及更高版本?

我有一个错误的长python项目,我正在尝试调试.它凌乱而无证.我熟悉python2.7.这个项目中没有二进制文件.直接的想法是尝试执行它python2.7 file.pypython3 file.py看看哪些有效.但正如我所说,它已经在许多地方出现了问题.所以他们都没有工作.是否有任何检查或方法或编辑器可以告诉我代码是用python2.7还是python3编写的?

python version identify python-2.7 python-3.x

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

python中参数意义内的冒号是什么意思?

在words_pron_dict:str上的冒号是什么意思?我在python 2.7上遇到语法错误.是python 3吗?我怎么用呢?

class TextToSpeech:
    CHUNK = 1024

    def __init__(self, words_pron_dict:str = 'cmudict-0.7b.txt'):
        self._l = {}
        self._load_words(words_pron_dict)
Run Code Online (Sandbox Code Playgroud)

python

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

从zip存档中提取特定文件,而不在python中维护目录结构

我正在尝试使用python从zip存档中提取特定文件.

在这种情况下,从apk本身提取apk的图标.

我目前正在使用

with zipfile.ZipFile('/path/to/my_file.apk') as z:
    # extract /res/drawable/icon.png from apk to /temp/...
    z.extract('/res/drawable/icon.png', 'temp/')
Run Code Online (Sandbox Code Playgroud)

哪个确实有效,在我的脚本目录中创建的temp/res/drawable/icon.png是temp加上与文件在apk内相同的路径.

我真正想要的是以temp/icon.png结束.

有没有办法直接使用zip命令,或者我需要提取,然后移动文件,然后手动删除目录?

python zip directory-structure

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

AttributeError:'dict'对象没有属性

我是python的新手,无法找到答案.参考消息末尾的代码,我可以知道下面一行中的"for item,total in totals.items()"部分是什么意思?

rankings = [(total/simSums[item], item) for item, total in totals.items()]
Run Code Online (Sandbox Code Playgroud)

此外,代码失败并说

# Return the Pearson correlation coefficient for p1 and p2
def sim_person(prefs, p1, p2):
    # Get the list of shared_items
    si={}
    for item in prefs[p1]:
        if item in prefs[p2]:si[item]=1

    # Find the number of elements 
    n=len(si)

    # if they have no ratings in common, return 0
    if n==0: return 0

    # Add up all the preferences
    sum1 = sum([prefs[p1][it] for it in si])
    sum2 = sum([prefs[p2][it] …
Run Code Online (Sandbox Code Playgroud)

python

22
推荐指数
3
解决办法
13万
查看次数

openpyxl按名称获取表格

我正在将一些数据写入Excel文件,但我不知道如何调整代码以便能够控制我写入的表格:

wb = load_workbook(filename)
active_ws = wb.active
Run Code Online (Sandbox Code Playgroud)

而不是wb.active,我怎么能说出类似的东西Sheets('Data')(这就是VBA语法的样子......)?

python openpyxl

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

如何访问typing.Generic的类型参数?

typing模块为泛型类型提示提供了一个基类:typing.Generic该类.

Generic方括号中的accept类型参数的子类,例如:

list_of_ints = typing.List[int]
str_to_bool_dict = typing.Dict[str, bool]
Run Code Online (Sandbox Code Playgroud)

我的问题是,如何访问这些类型的参数?

也就是说,str_to_bool_dict作为输入,我如何得到strbool作为输出?

基本上我正在寻找一个这样的功能

>>> magic_function(str_to_bool_dict)
(<class 'str'>, <class 'bool'>)
Run Code Online (Sandbox Code Playgroud)

python generics

22
推荐指数
3
解决办法
3667
查看次数

定期替换列表中的值

假设我在Python中有以下列表:

my_list = [10] * 95
Run Code Online (Sandbox Code Playgroud)

给定n,我想m在列表中替换任何其他元素,同时保留下一个n元素.

例如,如果n = 3m = 2,我希望我的列表看起来像:

[10, 10, 10, 0, 0, 10, 10, 10 ,0, 0, ..., 10, 10, 10 , 0, 0]
Run Code Online (Sandbox Code Playgroud)

如果它不能完全填补,因为与案件n = 4m = 2,那么它的确定,如果我的名单看起来是这样的:

[10, 10, 10, 10, 0, 0, ..., 10, 10, 10, 10, 0]
Run Code Online (Sandbox Code Playgroud)

我该如何尝试解决这个问题?

python replace list

22
推荐指数
5
解决办法
2117
查看次数