我搜索了stackoverflow中的其他帖子,甚至复制了它们以尝试在我的机器上尝试回答。但是,它始终无法抛出"TypeError"
# this is as one of other post in StackOverflow.
class ListClass(list):
def __init__(self, *args):
super().__init__(self, *args)
self.append('a')
self.name = 'test'
Run Code Online (Sandbox Code Playgroud)
我还尝试了通过的空课。但是,如果我继承并且我想念了一些东西而不是添加更多或错误的东西,那也失败了?
1)这是什么"TypeError"
,为什么?2)如何解决?
有关TypeError的更多快照:
>>> class ListClass(list):
... pass
...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: list() takes at most 1 argument (3 given)
Run Code Online (Sandbox Code Playgroud) 我没有这方面的代码,因为我不知道该怎么做,也无法在Google上找到太多帮助.
有没有办法找到2个列表上的相同索引是否相同?
例如:
x_list = [1, 2, 3, 4, 5]
y_list = [1, 2, A, B, 5]
Run Code Online (Sandbox Code Playgroud)
我想知道X的第一个索引是否与Y的第一个索引相同,X的第二个索引与Y的第二个索引相同,等等.我可以这样做:
x_list[0] == y_list[0]
Run Code Online (Sandbox Code Playgroud)
但需要无限的解决方案.
所以说我有一个字典,如:
d = {'A': 2 , 'B': -4, 'C': 3}
Run Code Online (Sandbox Code Playgroud)
我想要回"B".在过去,我的字典不必存储负值,我刚刚检查了具有最大值的键:
maxkey = max(d, key=lambda y: d[y])
Run Code Online (Sandbox Code Playgroud)
所以我想我可以尝试类似的东西:
maxkey = max(d, key=lambda abs(y): d[y])
Run Code Online (Sandbox Code Playgroud)
要么
maxkey = max(d, key=lambda y: d[abs(y)])
Run Code Online (Sandbox Code Playgroud)
但两者都返回错误消息.此外,我需要能够多次执行此操作,因此我无法用绝对值替换整个字典中的所有值...
我正在尝试将 FileHandler 添加到脚本中的记录器对象:
FOO_LOGGER = logging.getLogger(LOGGER_NAME)
# create the logging file handler
fh = FOO_LOGGER.FileHandler('foo.log')
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
AttributeError:“Logger”对象没有属性“FileHandler”
我使用的是Python版本Python 2.7.6
我有一个列表 - 一个列和一个列 - b.
a = [2, 4, 1, 1, 6, 1, 1, 3, 5, 1]
b = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J"]
Run Code Online (Sandbox Code Playgroud)
我想从列表"b"中获取列,当与列表"a"进行比较时,列的值为1.
我希望输出为:
c = ["C", "D", "F", "G", "J"]
Run Code Online (Sandbox Code Playgroud)
我该怎么做?
在C#中,我可以得到一些值的总和,如下:
new List<Tuple<string, int>>().Sum(x => x.Item2);
Run Code Online (Sandbox Code Playgroud)
如何在Python中实现相同的结果?假设我有一个元组列表
我想创建一个由前12个乘法表组成的矩阵。
到目前为止,我的代码是:
x = range(1,13,1)
n = range(1,13,1)
list_to_append = []
list_for_matrix = []
for i in x:
for j in n:
list_to_append.append(i*j)
list_for_matrix.append(list_to_append[0:12])
list_for_matrix.append(list_to_append[12:24])
list_for_matrix.append(list_to_append[24:36])
print (list_to_append)
print (list_for_matrix)
Run Code Online (Sandbox Code Playgroud)
我得到的输出是:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 3, 6, 9, 12, 15, 18, 21, 24, 27, 30, 33, 36, 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 5, …
Run Code Online (Sandbox Code Playgroud) 为什么lst.reverse()
这么快lst[::-1]
?Python 3和2似乎都有很大的时差.
示例(Python 3.5)
>>> from timeit import timeit
>>> lst = list('Crooked Hillary!') * 1000
>>> def TrumpWins(lst):
... lst.reverse()
... return lst
...
>>> def SecondPlace(lst):
... return lst[::-1]
...
>>> timeit(lambda: TrumpWins(lst), number=100000)
0.7976173080969602
>>> timeit(lambda: SecondPlace(lst), number=100000)
4.703373569995165
Run Code Online (Sandbox Code Playgroud) 我正在尝试搜索一个我从网站上检索的相当复杂的字符串.这是来自在线商店的产品ID列表.字符串如下:
['{ "40710": { "params": ["Black", "37"]}, "40711": { "params": ["Black", "37,5"]}, "40712": { "params": ["Black", "38"]}, "40713": { "params": ["Black", "38,5"]}, "40714": { "params": ["Black", "39"]}, "40715": { "params": ["Black", "40"]}, "40716": { "params": ["Black", "40,5"]}, "40717": { "params": ["Black", "41"]} }']
Run Code Online (Sandbox Code Playgroud)
我希望通过将ID(五位数字)作为键和大小(两三位数字)来从这些数据创建字典.
这就是我希望字典看起来像:
dictionary = {'40710':'37', '40711':'37,5', '40712':'38', '40713':'38,5', '40714':'39', '40715':'40', '40716':'40,5', '40717':'41'}
Run Code Online (Sandbox Code Playgroud)
我不知道正则表达式是否适合这种方式,但一切似乎都指向它; 但是,我真的不知道如何处理这样的数据.我真的可以在这里使用一些帮助.
提前致谢.
在python切片'如果第一个索引大于或等于第二个结果是一个空字符串'那么为什么以下操作返回字符串?
>>> msg = 'HelloWorld'
>>> msg[4:-2]
'oWor'
Run Code Online (Sandbox Code Playgroud) 我知道这是一个相当微不足道的问题,但这也是我在试图解决问题时也想到的原因.然而,我在这里问这个问题.它应该很容易,可能我做的事情完全错了,但我想知道我做错了什么.
我有这个字符串列表:
['1', ' ', '2', ' ', '6', ' ', '6', ' ', '5', ' ', '6', ' ', '5']
Run Code Online (Sandbox Code Playgroud)
我已经通过这样做剥离了/ n:
rstrip("\n")
Run Code Online (Sandbox Code Playgroud)
现在,我想摆脱空字符串,所以我尝试使用filter(None,x)
,但这不起作用.此外,试图用一个删除它for loop
; 也没用.
filter(None, the_list)
Run Code Online (Sandbox Code Playgroud)
这个陈述有什么问题?我也试过把它包装进去list()
,但也没用.
还试过这个:
my_list = [str for str in the_list if str]
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?
PS:我的最终目标是将字符串转换为整数,以便我可以计算东西,但我只能这样才能摆脱空字符串.
forms.py
class edit_product_data_check(forms.Form):
class Meta:
model = product_data
fields = '_all_'
Run Code Online (Sandbox Code Playgroud)
views.py
def update_product_data(request):
if request.method == "POST":
# Get the posted form
p_id=request.POST.get("product_id", "")
product_edit = get_object_or_404(product_data, id=p_id)
form = edit_product_data_check(request.POST, request.FILES, instance=product_edit)
if form.is_valid():
form.save()
HttpResponseRedirect(reverse('index'))
return HttpResponseRedirect(reverse('product'))`
Run Code Online (Sandbox Code Playgroud) 我有一个邻接矩阵,例如:
[[ 0., 15., 0., 7., 10., 0.],
[ 15., 0., 9., 11., 0., 9.],
[ 0., 9., 0., 0., 12., 7.],
[ 7., 11., 0., 0., 8., 14.],
[ 10., 0., 12., 8., 0., 8.],
[ 0., 9., 7., 14., 8., 0.]]
Run Code Online (Sandbox Code Playgroud)
我怎样才能将它转换为像下面这样的邻接列表?
graph = {'1': [{'2':'15'}, {'4':'7'}, {'5':'10'}],
'2': [{'3':'9'}, {'4':'11'}, {'6':'9'}],
'3': [{'5':'12'}, {'6':'7'}],
'4': [{'5':'8'}, {'6':'14'}],
'5': [{'6':'8'}]}
Run Code Online (Sandbox Code Playgroud)
?
python ×13
python-2.7 ×4
python-3.x ×3
dictionary ×2
c# ×1
django ×1
ipython ×1
list ×1
matrix ×1
regex ×1