相关疑难解决方法(0)

在Python中查找两个字典列表之间的差异

我试图找到2个字典列表之间的区别.我在这个论坛中找到了一些信息,但没有达到我的目的.

incoming_rows = [{'column_name': 'LOAD_ID', 'data_type': 'int', 'table_name': 'CONFIG'},
            {'column_name': 'ROW_NUMBER', 'data_type': 'int', 'table_name': 'CONFIG'},
            {'column_name': 'CREATE_DATE', 'data_type': 'VARCHAR(20)', 'table_name': 'CONFIG'},
            {'column_name': 'CONFIG_TYPE', 'data_type': 'varchar(1)', 'table_name': 'CONFIG'},
            {'column_name': 'CONFIG_ID', 'data_type': 'numeric(10,0)', 'table_name': 'CONFIG'}
            ]

available_row = [{'column_name': 'LOAD_ID', 'data_type': 'int', 'table_name': 'CONFIG'},
             {'column_name': 'ROW_NUMBER', 'data_type': 'int', 'table_name': 'CONFIG'},
             {'column_name': 'CREATE_DATE', 'data_type': 'date', 'table_name': 'CONFIG'}
             ]
Run Code Online (Sandbox Code Playgroud)

在这里,我需要将incoming_rows与available_row字典列表进行比较,差异想要列在另一个dict格式列表中.这里我的表名是唯一的.条件:1.任何新添加的列.2.数据类型的任何更改如果这两个条件为真,则expected_row应仅包含这些已更改的行.

# expected output
expected_row=[{'column_name': 'CONFIG_TYPE', 'data_type': 'varchar(1)', 'table_name': 'CONFIG'},
          {'column_name': 'CONFIG_ID', 'data_type': 'numeric(10,0)', 'table_name': 'CONFIG'},
          {'column_name': 'CREATE_DATE', 'data_type': 'VARCHAR(20)', 'table_name': 'CONFIG'}
        ]
Run Code Online (Sandbox Code Playgroud)

python dictionary list python-3.x

3
推荐指数
1
解决办法
862
查看次数

如何以更高效和pythonic的方式编写以下代码?

我有一个url列表:file_url_list,打印到这个:

www.latimes.com, www.facebook.com, affinitweet.com, ...
Run Code Online (Sandbox Code Playgroud)

还有另一个Top 1M url的列表:top_url_list,打印到这个:

[1, google.com], [2, www.google.com], [3, microsoft.com], ...
Run Code Online (Sandbox Code Playgroud)

我想找到多少网址中file_url_list都在top_url_list.我写了下面的代码,但我知道这不是最快的方法,也不是最蟒蛇的方法.

# Find the common occurrences
found = []
for file_item in file_url_list:
    for top_item in top_url_list:
        if file_item == top_item[1]:
            # When you find an occurrence, put it in a list
            found.append(top_item)
Run Code Online (Sandbox Code Playgroud)

我怎样才能以更高效,更pythonic的方式写出来?

python python-3.x

3
推荐指数
1
解决办法
93
查看次数

计算重叠的位置

如果你有两对值,开始和结束 - 你如何计算它们的重叠位置?

即,如果开始和结束值对是

[10,20],[15,20]

在这种情况下compute_overlap((15,20),(10,20))应该返回,(15,20)因为这是重叠的地方.

做这个的最好方式是什么?

python algorithm

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

有没有办法在Python中获取元组或列表的差异和交集?

如果我有名单:

a = [1, 2, 3, 4, 5]
b = [4, 5, 6, 7, 8]

c = a * b
Run Code Online (Sandbox Code Playgroud)

应该给我:

c = [4, 5]
Run Code Online (Sandbox Code Playgroud)

c = a - b
Run Code Online (Sandbox Code Playgroud)

应该给我:

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

这可用于Python还是我必须自己编写?

为元组做同样的工作吗?我可能会使用列表,因为我将添加它们,但只是想知道.

python tuples intersection list difference

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

检查两个列表中是否有相同的值

我有2个列表一个:

[(12,23),(12,45),(12,23),(2,5),(1,2),(2,4),(7,34)] 最多约1000个元素和另一个元素:

[(12,23),(12,45),(12,23),(2,5),(1,2),(2,66),(34,7)] 最多可达241个元素.

我想要的是检查列表是否包含任何相同的元素,然后将它们放在一个新的列表中.

所以新的名单变成了

[(12,23),(12,45),(12,23),(2,5),(1,2)]

python list

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

获取两个列表列表的交集或空列表

我有两个形状相同的清单清单。

list1 = [[1,2,3], [], [4,5], []]
list2 = [[1,2], [7], [4,5], []]
Run Code Online (Sandbox Code Playgroud)

我需要以下列表列表:

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

我如何得到它?

PS:这些主题对我没有帮助:

Python-列表的两个列表的交集

查找两个嵌套列表的交集?

python

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