小编Mar*_*ers的帖子

TypeError:正好取2个参数(给定1个)

class DLLNode(object):

    def __init__(self, data, prev_link, next_link):  
        self.data = data
        self.prev_link = prev_link
        self.next_link = next_link


class DoublyLinkedList(object):

    def __init__(self):
        self.head=None
        self.tail=None

    def add_head(self, add_obj):
        self.head=DLLNode(add_obj,None,self.head)
Run Code Online (Sandbox Code Playgroud)
>>> x=DoublyLinkedList
>>> x.add_head(1)
Traceback (most recent call last):
  File "<pyshell#20>", line 1, in <module>
    x.add_head(1)
TypeError: add_head() takes exactly 2 arguments (1 given)
Run Code Online (Sandbox Code Playgroud)

python

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

为什么在python中函数是假的?

我无法弄清楚原因:

f = lambda x: x
In [8]: f is True
Out[8]: False

In [9]: not f is True
Out[9]: True

In [10]:  f is False
Out[10]: False

In [11]: f is True
Out[11]: False

In [12]: not f
Out[12]: False

In [13]: not f is True
Out[13]: True

In [14]: not f is False
Out[14]: True
Run Code Online (Sandbox Code Playgroud)

好.所以直到现在我们可以想象这是由于使用"是"而不是"==".如下图所示:

In [15]: 0.00000 is 0
Out[15]: False

In [16]: 0.00000 == 0
Out[16]: True
Run Code Online (Sandbox Code Playgroud)

好.但是为什么然后如果我在功能上这样做:

In [17]: not f == False
Out[17]: …
Run Code Online (Sandbox Code Playgroud)

python boolean

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

使用列表推导从2 ^ 0到2 ^ 99找到2的幂

def lst_comp():
    list = []
    list = (2**i for i in range(100))
    print list
    return list
Run Code Online (Sandbox Code Playgroud)

我这样做时得到这个: <generator object <genexpr> at 0x00000000034C48B8>

python list-comprehension python-2.7

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

为什么我们必须直接将模块名称赋给`import`语句?

我正在阅读/sf/answers/1976226381/

为什么我们可以将模块名称作为变量来builtins.__import__运行,而我们必须直接将模块名称赋予import语句?

语句和导致这种差异的函数之间有什么区别?

python python-3.x

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

Python将时间字符串"4d12h33m59s"分割成碎片

我想知道是否有人可以帮助提出一个优雅的解决方案,如何将从路由器的格式API收到的时间字符串拆分"4d12h33m59s"成碎片.

问题是字符串可能是动态大小.例如,它可以是"4d12h33m59s""12h33m59s""12y14w4d12h33m59s""12m23s","33s".

是否有任何优雅的方法来分割字符串并得到如下列表:

received_string = "12y14w4d12h33m59s"
time_list = convert_string(received_string)

print(time_list) 
["12y","14w","4d","12h","33m","59s"]
Run Code Online (Sandbox Code Playgroud)

python string time split

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

Python str.split()和列表创建

目前通过"Python编程:CS简介"学习python,在将字符串拆分为列表之前,所有内容都已清晰可见.总的来说,我得到了要点,str.split()但只是发现了一些有点古怪的东西.

这本书有以下例子:

>>> myString = "Hello, string methods!"
>>> myString.split()
['Hello,' , 'string' , 'methods!']
Run Code Online (Sandbox Code Playgroud)

作者说,myString现在已经分成三个子串列表.

继续,这样做变成myString一个列表:

>>> myString = "Hello, string methods!"
>>> myString2 = myString.split()
>>> myString2
['Hello,' , 'string' , 'methods!']
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.

在使用shell进行自己的实验后,我发现了以下内容:

# Testing splitting of variable x
>>> x = "Pleased to meet you"
>>> x
'Pleased to meet you'
>>> x.split()
['Pleased', 'to', 'meet', 'you']
>>> type(x)
**<class 'str'>**

# Testing behavior of splitting …
Run Code Online (Sandbox Code Playgroud)

python python-3.x

-2
推荐指数
2
解决办法
257
查看次数

条件加入列表

我有一个Python列表:

data = ['Cost', '$', 4244, '$', 4090, '$', 3967]
Run Code Online (Sandbox Code Playgroud)

我想要做的是合并$前面的元素并获得一个新的列表:

data = ['Cost', '$4244', '$4090', '$3967']
Run Code Online (Sandbox Code Playgroud)

实现这一目标的最佳方法是什么?

python list string-concatenation

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

如何使用python查找文本中的JSON对象

我正在尝试使用python regex从文本解析JSON对象。我找到了这个匹配项:

'\{(?:[^{}]|(?R))*\}'
Run Code Online (Sandbox Code Playgroud)

但是在python中,我得到了这个错误:

re.error: unknown extension ?R at position 12
Run Code Online (Sandbox Code Playgroud)

请参见此regex101示例中的regex匹配

python regex json

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

Python中的列表列表的列表理解

我有一个列表列表,我想找到出现“ //”的索引。我知道如何使用嵌套循环,但是我想使用列表理解。我的清单是:

ex = [['foo', 'faa'], ['//', 'sd'], ['foo', 'kaa'], ['side', 'haha', 'blue'], ['//', 'sd']]
Run Code Online (Sandbox Code Playgroud)

如何在此处使用列表理解来查找出现“ //”的索引?到目前为止,我所做的是:

indices = [idx for idx, lst in enumerate(ex)]
Run Code Online (Sandbox Code Playgroud)

这给了我列表中列表的索引。但是我不知道如何使用这些来查找'//'使用列表理解的索引。

对于上面的ex示例,预期输出为

[1, 4]
Run Code Online (Sandbox Code Playgroud)

例如,对于含有嵌套列表的索引'//',这是ex[1]ex[4]

python list-comprehension list python-3.x

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

如何在python3中节省内存?

我对python3.6中的内存错误有一些疑问

import itertools
input_list = ['a','b','c','d']
group_to_find = list(itertools.product(input_list,input_list))
a = []
for i in range(len(group_to_find)):
    if group_to_find[i] not in a:
       a.append(group_to_find[i])
Run Code Online (Sandbox Code Playgroud)
    group_to_find = list(itertools.product(input_list,input_list))
MemoryError
Run Code Online (Sandbox Code Playgroud)

python python-itertools python-3.x

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