1. 程式人生 > >關於python中求出兩個列表的相同元素和不同元素

關於python中求出兩個列表的相同元素和不同元素

 用列表推導式來寫

list1 = [1,3,65,2,7]
list2 = [3,2,5,4]

c = [x for x in list1 if x in list2]
d = [y for y in (list1+list2) if y not in c]

print(c)
print(d)

用普通的for迴圈來寫

list1 = [1,3,65,2,7]
list2 = [3,2,5,4]
list3 = []
list4 = []


for i in list1:
    for j in list2:
        if i == j:
            list3.append(i)

for b in (list1 + list2):
    if b not in list3:
        list4.append(b)
 
print(list3)
print(list4)

相關推薦

關於python列表相同元素不同元素

 用列表推導式來寫 list1 = [1,3,65,2,7] list2 = [3,2,5,4] c = [x for x in list1 if x in list2] d = [y for y in (list1+list2) if y not in c] prin

python 如何在一個for迴圈遍歷列表

#coding:utf-8 ################# # for迴圈兩個列表的過程 list1 = ['1', '1'] list2 = ['A','B'] for x in list1, list2: reslut = x[:] print reslut # type=

Median of Two Sorted Arrays 已排序陣列的位數

題目為: There are two sorted arrays nums1 and nums2 of size m and n respectively. Find the median of the two sorted arrays. The overall run

用O(lgn)時間已排序陣列的位數

相關問題: 設 x[1..n]和Y[1..n]為兩個陣列,每個都包含n個已排序的數。給出一個求陣列X和Y中所有2n個元素的中位數的O(lgn)時間的演算法。 思考過程:         開始我想把兩個陣列X與Y放入到一個數組Z中,對Z進行排序,這樣Z的中位數易求。但是有2點

用JS找字串相同的最大子串

例如 輸入:str1 : instritesting            str2:  string 輸出:stri   function Clear(str1,str2){

從陣列元素等於指定數值,並輸出位置。

從陣列中找出和為指定值的第一對元素 1、這博文主要是實現了從陣列中找到兩個元素之和與指定值相等的元素,並輸出這兩個元素的陣列下標。 2、若有多對元素之和等於指定元素,那麼只需找到第一對並輸出結果即可。 程式思想及分析 1、通過快速排序對陣列進行排序,

在給定的陣列元素為給定值的所有元素

Design an algorithm to find all pairs of integers within an array which sum to a specified value.  使用hash map: 1假設V為給定的值,A為給定的陣列。 2建立has

python如何比較float型別的資料是否相等

奇怪的現象 前幾天跟同事聊起來,在計算機內部float比較是很坑爹的事情。比方說,0.1+0.2得到的結果竟然不是0.3? >>> 0.1+0.2 0.30000000000000004 為什麼會出現如此傻的結果呢? 這篇文章做了詳細的解釋,簡單的來說就是計算機裡面的數字是由二進位制儲存的,

java找字串相同元素

前兩天面試,面試官讓我在5分鐘之內手寫一個程式,就是找出兩個字串相等的元素,當時搞了一個雙重迴圈,面試官說很low。現在寫一個高效一點的,分享一下。 public class TestMain { public static void main(String[]

[第一章]在Python如何讓print()函式的輸出列印在一行內?

兩個連續的print()函式輸出內容一般會分行顯示,即呼叫print()函式後換行並結束當前行,那麼如果要讓兩個print()函式列印在一行內該怎麼做呢? 我們知道,print()中有兩個引數sep和

python如何將list合併成一個list,不用for語句

除了直接相加(生成新的list),還有兩種方法(修改其中一個list): 用list的extend方法,L1.extend(L2),該方法將引數L2的全部元素新增到L1的尾部,例如: 1 2 3 4 5 >>> L1 = [1, 2, 3, 4, 5] >

python 判斷列表相同不同元素

列表 直接 code 數據 返回 pytho style exce print 背景: 在做接口自動化時,通常會判斷接口返回中的數據信息,與數據庫中返回的數據信息是否一致,比如:將接口返回信息的用戶姓名存放到一個列表中,將數據庫返回的用戶姓名存放到另一個列表中,這時需要判斷

python列表實例如何相加或相減

array arr sharp pre sha 相減 例如 arp 相加 如下 import numpy a = [1, 2, 3, 4] b = [5, 6, 7, 8] a_array = numpy.array(a) b_array = numpy.ar

已知連結串列AB分別表示集合,其元素遞增排列。請設計一個演算法,用於A與B的交集,並存放在A連結串列

語言:C++ #include <iostream> using namespace std; typedef struct LNode { int data; LNode *next; }LNode,*LinkList; //建立連結串列 int CreateList(Li

orcale 查找相同欄位的不同的值minus

1.user表 SELECT user_id FROM OA_COMPANY_USER 2.專案表中投入過的人員 SELECT DISTINCT a.USER_ID FROM OA_COMPANY_USER a, OA_PM_PERSON_INPUT b WHERE a.

python列表比較,找不同的刪掉

比較兩個列表,刪除不一樣,簡單方法就是減法,得出不一樣的列表,迴圈刪就可以了 a = [1,2] b=[3,4] #用減法 set(a) - set(b) #結果: set([1, 2])

時間殺手—for迴圈—如何找list相同元素

import numpy import datetime a = numpy.random.randint( 5,1000,100000 ) b = numpy.random startt1 = datetime.datetime.now() l11 = sorted(list(set(a)))

分治法長度相同都按升序排列陣列的位數

#include <iostream> using namespace std; void Mid(int a[],int aleft,int aright,int b[],int bleft,int bright) { double mid;

Python程式碼比較列表元素是否相等,並且返回相等元素列表索引

list1 = [1,2,'a','b',5,67,78,99,"ji"] list2 = [1,"a","b",2,87,34,67,"ji"] for i in range(len(list1)): for j in range(len(list2)):