相关疑难解决方法(0)

元组列表中的最大值

我有一个问题是在动态元组列表中获得最高值.
List可能如下所示:

adymlist = [[('name1',1)],[('name2',2),('name3',1), ...('name10', 20)], ...,[('name m',int),..]]
Run Code Online (Sandbox Code Playgroud)

现在我遍历List以获得最高值(整数):

total = {}
y=0 
while y < len(adymlist):
    if len(adymlist) == 1:
         #has the List only 1 Element -> save it in total 
         total[adymlist[y][0][0]] = adymlist[y][0][1]
         y += 1
    else:
         # here is the problem
         # iterate through each lists to get the highest Value
         # and you dont know how long this list can be
         # safe the highest Value in total f.e. total = {'name1':1,'name10':20, ..}
Run Code Online (Sandbox Code Playgroud)

我尝试了很多以获得最大值,但我发现我的问题没有结论.我知道我必须遍历列表中的每个元组并将其与下一个元组进行比较,但它不知道如何正确编码.

我也可以使用该函数, …

python list max

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

python分解列表

我记得我曾经见过一个能够在python中分解列表的运算符.

例如

[[1],[2],[3]]
Run Code Online (Sandbox Code Playgroud)

通过应用该运营商,你得到

[1], [2], [3]
Run Code Online (Sandbox Code Playgroud)

什么是该运营商,任何帮助将不胜感激.

python list operators

7
推荐指数
1
解决办法
6289
查看次数

如何在python中展平嵌套列表?

我怎样才能转换:

THIS = \
['logging',
 ['logging', 'loggers',
  ['logging', 'loggers', 'MYAPP',
   ['logging', 'loggers', 'MYAPP', '-handlers'],
   ['logging', 'loggers', 'MYAPP', 'propagate']
  ]
 ],
 ['logging', 'version']
]
Run Code Online (Sandbox Code Playgroud)

成:

THAT = [
    ['logging'],
    ['logging', 'version'],
    ['logging', 'loggers'],
    ['logging', 'loggers', 'MYAPP'],
    ['logging', 'loggers', 'MYAPP', '-handlers'],
    ['logging', 'loggers', 'MYAPP', 'propagate']
]
Run Code Online (Sandbox Code Playgroud)

在python中(它不需要排序,只是扁平化)?

我已经尝试了很多东西但是找不到如何解决这个问题.

python

7
推荐指数
1
解决办法
831
查看次数

如何使用各种数据类型展平列表(int,tuple)

假设我有一个包含一个或多个元组的列表:

[0, 2, (1, 2), 5, 2, (3, 5)]
Run Code Online (Sandbox Code Playgroud)

什么是摆脱元组的最佳方法,以便它只是一个int列表?

[0, 2, 1, 2, 5, 2, 3, 5]
Run Code Online (Sandbox Code Playgroud)

python tuples list flatten

7
推荐指数
2
解决办法
1037
查看次数

在列表中创建重复项

我有

 list = [a, b, c, d]
Run Code Online (Sandbox Code Playgroud)

numbers = [2, 4, 3, 1]
Run Code Online (Sandbox Code Playgroud)

我想得到一个类型列表:

new_list = [a, a, b, b, b, b, c, c, c, d]
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止:

new_list=[] 
for i in numbers: 
    for x in list: 
        for i in range(1,i+1): 
            new_list.append(x)
Run Code Online (Sandbox Code Playgroud)

python list

7
推荐指数
3
解决办法
755
查看次数

扁平化浅层嵌套列表的成语:它是如何工作的?

我在我正在处理的模块中找到了这段代码:

l = opaque_function()
thingys = [x for y in l for x in y]
Run Code Online (Sandbox Code Playgroud)

我看不懂这个.通过实验,我能够确定它是否展平了2级嵌套列表,但是syntex对我来说仍然是不透明的.它显然省略了一些可选括号.

>>> l = [[1,2],[3,4]]
>>> [x for y in l for x in y]
[1, 2, 3, 4]
Run Code Online (Sandbox Code Playgroud)

我的眼睛想要将它解析为:[x for y in [l for x in y] ]或者[ [x for y in l] for x in y ],但是由于y没有被定义,两者都失败了.

我该怎么读这个?

(我怀疑在解释这个问题时我会感到非常尴尬.)

python

6
推荐指数
3
解决办法
214
查看次数

尝试将矩阵1*3转换为列表

我目前正在:

y=[[ 0.16666667]
[-0.16666667]
[ 0.16666667]]
Run Code Online (Sandbox Code Playgroud)

这来自我正在使用的功能,我需要将上面的内容转换为以下格式的列表:

x= [0.16666667,-0.16666667,0.16666667]
Run Code Online (Sandbox Code Playgroud)

我尝试了列表(y),但这不起作用,因为它返回:

[array([ 0.16666667]), array([-0.16666667]), array([ 0.16666667])]
Run Code Online (Sandbox Code Playgroud)

我到底怎么做?

python numpy

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

了解用于在列表列表中查找最小值的python策略

我有以下值列表列表,我想在所有值中找到最小值.

Q = [[8.85008011807927, 4.129896248976861, 5.556804136197901], 
     [8.047707185696948, 7.140707521433818, 7.150610818529693],  
     [7.5326340018228555, 7.065307672838521, 6.862894377422498]]
Run Code Online (Sandbox Code Playgroud)

我打算做以下事情:

min(min(Q))
Run Code Online (Sandbox Code Playgroud)

我在一个较小的例子上尝试了这种方法,它可以工作:

>>>b = [[2,2],[1,9]]
>>>min(b)
[1, 9]
>>>min(min(b))
1
Run Code Online (Sandbox Code Playgroud)

但是在原始列表Q上使用它会返回错误的结果:

>>> min(Q)
[7.5326340018228555, 7.065307672838521, 6.862894377422498]
>>> min(min(Q))
6.862894377422498
Run Code Online (Sandbox Code Playgroud)

为什么这种方法错了,为什么?

python list

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

在python中查找两个字符串列表的交集

我已经通过查找两个列表的交集?的两个列表字符串路口获取两个列表的交集的蟒蛇。但是,我无法解决使用 Python 查找两个字符串列表之间的交集的问题。

我有两个变量。

A = [['11@N3'], ['23@N0'], ['62@N0'], ['99@N0'], ['47@N7']]

B  = [['23@N0'], ['12@N1']]
Run Code Online (Sandbox Code Playgroud)

如何找到 '23@N0' 是 A 和 B 的一部分?

我尝试使用http://www.saltycrane.com/blog/2008/01/how-to-find-intersection-and-union-of/ 中提到的 intersect(a,b) 但是,当我尝试转换 A进入集合,它抛出一个错误:

File "<stdin>", line 1, in <module> TypeError: unhashable type: 'list'
Run Code Online (Sandbox Code Playgroud)

要将其转换为集合,我使用了TypeError: unhashable type: 'list' when using built-in set function中的方法,其中列表可以使用转换

result = sorted(set(map(tuple, A)), reverse=True)
Run Code Online (Sandbox Code Playgroud)

成元组,然后元组可以转换成一个集合。但是,这会返回一个空集作为交集。

你能帮我找到路口吗?

python string intersection list set

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

如何将元组列表展平为pythonic列表

给出以下元组列表:

INPUT = [(1,2),(1,),(1,2,3)]
Run Code Online (Sandbox Code Playgroud)

我怎么把它压成一个列表?

OUTPUT ==> [1,2,1,1,2,3]
Run Code Online (Sandbox Code Playgroud)

上面有一个单行班吗?

类似:在Python中展平元组列表

python list flatten

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

标签 统计

python ×10

list ×7

flatten ×2

intersection ×1

max ×1

numpy ×1

operators ×1

set ×1

string ×1

tuples ×1