I have 2 files I converted to list of lists format. Short examples 

```
a

c1 165.001 17593685 

c2 1650.94 17799529

c3 16504399 17823261

b

1 rs3094315 **0.48877594** *17593685* G A

1 rs12562034 0.49571378 768448 A G

1 rs12124819 0.49944228 776546 G A

```

Using the cycle 'for' I tried to find the common values of these lists, but I can't loop the process. It is necessary since I need to get an value that is adjacent to the value that is common to the two lists(in this given example it is **0.48877594** since 17593685 is common for 'a' and 'b' . My attempts that completely froze:

```
for i in a:

        if i[2] == [d[3] for d in b]:

                print(i[0], i[2] + d[2])

```

or 

```
for i in a and d in b:

        if i[2] == d[3]

                print(i[0], i[2] + d[2]

```

Overall I need to get the first file with a new column, which will be that bold adjacent value. Is is my first month of programming and I cant understand logic. Thanks in advance!

+++

List's original format:

a = [['c1', '165.001', '17593685'], ['c2', '1650.94', '17799529'], ['c3', '16504399', '17823261']]
[['c1', '16504399', '17593685.1\n'], ['c2', '16504399', '17799529.1\n'], ['c3', '16504399', '17823261.\n']]

++++ My original data

Two or more people can have DNA segments that are the same, because they were inherited from a common ancestor. File 'a' contains the following columns:
SegmentID, Start of segment, End of Segment, IDs of individuals that share this segment(from 2 to infinity). Example(just a little part since real list has > 1000 raws - segments('c'). Number of individuals can be different.  

c1 16504399 17593685 19N 19N.0 19N 19N.0 182AR 182AR.0 182AR 182AR.0 6i 6i.1 6i 6i.1 153A 153A.1 153A 153A.1

c2 14404399 17799529 62BB 62BB.0 62BB 62BB.0 55k 55k.0 55k 55k.0 190k 190k.0 190k 190k.0 51A 51A.1 51A 51A.1 3A 3A.1 3A 3A.1 38k 38k.1 38k 38k.1

c3 1289564 177953453 164Bur 164Bur.0 164Bur 164Bur.0 38BO 38BO.1 38BO 38BO.1 36i 36i.1 36i 36i.1 100k 100k.1 100k 100k.1 

file b:

This one always has 6 columns but number of rows more the 100 millions, so only it's part:

1 rs3094315 0.48877594 16504399 G A

1 rs12562034 0.49571378 17593685 A G

1 rs12124819 0.49944228 14404399 G A

1 rs3094221 0.48877594 17799529 G A

1 rs12562222 0.49571378 1289564 A G

1 rs121242223 0.49944228 177953453 G A

So, I need to compare a[1] with b[3] and if they are equal 
print(a[1],b[3]), because b[3] is position of segment too but in another measurement system. That is what I can't do