Home >Backend Development >Python Tutorial >Python Day-List functions, Tasks

Python Day-List functions, Tasks

Barbara Streisand
Barbara StreisandOriginal
2024-12-26 19:17:09228browse

Python Day-List functions, Tasks

split(): It converts string into list and seperated by commas.
join(): It converts list into string.
Example:

1. Reverse the given input-->thursday is today

Method:1 Using loops

s = "today is thursday"
reverse = ""
i = 0

while i<len(s):
    reverse = reverse + s[-(i+1)]
    i+=1

print(reverse) #yadsruht si yadot

i = 0 
word = ""
while i<len(reverse):
    if reverse[i]==' ':
        print(word[::-1],end=' ')
        word = ""
        i+=1
        continue
    word = word + reverse[i]
    i+=1
else:
    print(word[::-1])

Method:2 Using list

sen = "today is thursday"
l =  sen.split(" ")
print(l)
print(l[::-1])
s = " ".join(l[::-1])
print(s)

Output:

yadsruht si yadot
thursday is today

Deep copy:

-->In Python, variables assigned to mutable objects (like lists) hold references to the objects.
-->If two variables reference the same object, changes made via one variable are reflected in the other.

Example:

l1 = [10,20,30]
l2 = l1
print(l1)
print(id(l1))
print(l2)
print(id(l2))
l2[0] = 111
print(l1)
print(l2)

Output:

[10, 20, 30]
127285488814912
[10, 20, 30]
127285488814912
[111, 20, 30]
[111, 20, 30]

Shallow copy:
-->The copy() method creates a new list object but only copies the references of the elements (for nested objects).
-->It will stored in seperate memory address.

Example:

l1 = [10,20,30]
l2 = l1.copy()
print(l1)
print(id(l1))
print(l2)
print(id(l2))
l2[0] = 111
print(l1)
print(l2)

Output:

[10, 20, 30]
140500496468800
[10, 20, 30]
140500496470528
[10, 20, 30]
[111, 20, 30]

Lexicographical Order:

--> lexicographical order means arranging them in dictionary order, based on the alphabetical sequence of their letters.

--> Compares with ASCII order.(A-Z:65-91),(a-z:97-122)

Using comparison operators:

l1 = ['lakshmi', 'guru', 'kuhan']
l2 = ['lakshmi', 'guru', 'kuhan']
print(l1 == l2)
print(l1 != l2)

l2 = ['guru', 'lakshmi', 'kuhan']
print(l1>l2) 
print(l1<l2)

Output:

True
False
True
False

Exercises: Interview questions

  1. Get as output: 10 5 10 6 10 7 20 5 20 6 20 7 30 5 30 6 30 7
l1 = [10,20,30]
l2 = [5,6,7]

for no in l1:
    for num in l2:
        print(no, num, end=' ')
    print()

Output:

10 5 10 6 10 7 
20 5 20 6 20 7 
30 5 30 6 30 7 
  1. Remove if you get 20 20 nearby in output:
l1 = [10,20,30]
l2 = [8,20,7]

for no in l1:
    for num in l2:
        if no != num:
            print(no, num,end=' ')
    print()

Output:

10 8 10 20 10 7 
20 8 20 7 
30 8 30 20 30 7 

Tasks:
1. Find pairs from the list which gives sum: 5
l1 = [1,2,3,4,5,6,7,8,9,0]

Method:1

l = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]

pairs = []
for i in l: 
    for j in l:
        if i + j == 5:
            pairs.append((i,j))
print(pairs)

Output:

[(1, 4), (2, 3), (3, 2), (4, 1), (5, 0), (0, 5)]

Method:2

l = [1,2,3,4,5,6,7,8,9,0]
for i in range(len(l)):
    for j in range(len(l)):
        sum = l[i] + l[j]
        if sum == 5:
            print(l[i], l[j])

Output:

1 4
2 3
3 2
4 1
5 0
0 5

2. Find the missing number
l = [10,20,30,50,60,70,80,90]

Method:1

l = [10, 20, 30, 50, 60, 70, 80, 90]
results = []

for i in range(len(l) - 1):
    if l[i + 1] - l[i] != 10:
        results.append(int((l[i] + l[i + 1]) / 2))

for result in results:
    print(result)

Method:2

l = [10,20,30,50,60,70,80,90]
i=0
while i<len(l)-1:
    if l[i+1]-l[i]!=10:
        result=(l[i]+l[i+1])/2
        print(int(result))
    i+=1

Output:

40

The above is the detailed content of Python Day-List functions, Tasks. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn