logo

Įdėtos eilutės Python

Įdėta eilutė yra „Python“ rinkinys, kuris buvo patalpintas kitoje sekoje. Pažvelkime į šią 8 elementų eilutę.

 tuple = (12, 23, 36, 20, 51, 40, (200, 240, 100)) 

Šis paskutinis elementas, kurį sudaro trys skliausteliuose pateikti elementai, yra žinomas kaip įdėtas eilė, nes jis yra kitoje sekoje. Pagrindinės eilės pavadinimas su indekso reikšme, korezija[indeksas], gali būti naudojamas norint gauti įdėtą eilutę, o kiekvieną įdėtos eilės elementą galime pasiekti naudodami seką[index-1][index-2].

Įdėtos eilutės pavyzdys

Kodas

 # Python program to create a nested tuple # Creating a nested tuple of one element only employee = ((10, 'Itika', 13000),) print(employee) # Creating a multiple-value nested tuple employee = ((10, 'Itika', 13000), (24, 'Harry', 15294), (15, 'Naill', 20001), (40, 'Peter', 16395)) print(employee) 

Išvestis:

 ((10, 'Itika', 13000),) ((10, 'Itika', 13000), (24, 'Harry', 15294), (15, 'Naill', 20001), (40, 'Peter', 16395)) 

Kai kurios įdėtųjų kortelių operacijos

Pamatysime dvi būtinas įdėtųjų eilučių operacijas.

Kortelių sujungimas su įdėtomis kortelėmis

Kai dirbate su eilėmis, kartais reikia atskirus įrašus paversti įdėta grupe, išsaugant juos kaip nepriklausomus elementus. Kortelės dažnai pridedamos pridedant turinį, o tai išlygina gautą talpyklą, o tai paprastai yra nepageidautina. Pakalbėkime apie kai kuriuos šios problemos sprendimo būdus.

rodyti vartotojams mysql

Inicializacijos metu naudokite operatorių + ir ','

Taikant šią techniką, kortos narius pridedame taip pat, kaip ir darome, tačiau inicijuodami eilutes po kiekvienos eilės pridedame kablelį, kad papildymo metu nebūtų išlygintos.

Kodas

 # Python program to concatenate tuples to make a nested tuple # initializing the tuples tup1 = (5, 4), tup2 = (1, 6), # printing the original tuples print('Tuple 1 : ' + str(tup1)) print('Tuple 2 : ' + str(tup2)) # Concatenating the two tuples to a nested tuple using the + operator nested = tup1 + tup2 # printing the result print('The nested tuple : ' + str(nested)) 

Išvestis:

 Tuple 1 : ((5, 4),) Tuple 2 : ((1, 6),) The nested tuple : ((5, 4), (1, 6)) 

Naudodami ',' operatorių

Šią užduotį galima atlikti sujungimo metu taikant operatorių „,“. Jis gali atlikti saugų sujungimą.

Kodas

 # Python program to concatenate tuples to make a nested tuple # initializing the tuples tup1 = (5, 4) tup2 = (1, 6) # printing the original tuples print('Tuple 1 : ' + str(tup1)) print('Tuple 2 : ' + str(tup2)) # Concatenating the tuples by using the ', 'operator after tuples nested = ((tup1, ) + (tup2, )) # printing result print('The nested tuple ' + str(nested)) 

Išvestis:

 Tuple 1 : (5, 4) Tuple 2 : (1, 6) The nested tuple ((5, 4), (1, 6)) 

Rūšiuoti įdėtas eilutes

Mes galime naudoti sorted() metodą, norėdami surūšiuoti nurodytą seką. Pagal numatytuosius nustatymus šis metodas rūšiuoja seką didėjančia tvarka. Pavyzdžiui, print(rūšiuotas(darbuotojas)) sutvarkys seką „darbuotojas“ pagal identifikavimo numerį, kuris rodomas kaip 0-asis visų įdėtų eilučių narys. Mes galime naudoti lambda funkciją norėdami surūšiuoti savo eilutę, priklausomai nuo kitų įdėtos eilės elementų, pvz., darbuotojo vardo arba skaičiaus, kuris yra pirmasis ir antrasis įdėtųjų eilučių narys: print(sorted(darbuotojas, raktas = lambda x: x[1])).

Šiuo atveju raktas nurodo sorted() funkcijai, pagal kokius elementus turėtume rūšiuoti seką. Lambda išraiška: lambda x: x[1] reiškia, kad rūšiuojant reikia atsižvelgti į raktą, kuris yra indekso vienas elementas. Lambda išraišką galime parašyti kaip lambda x: x[2], kad rūšiuotume eilutę pagal žodžių skaičių.

Kodas

 # Python program to sort the nested tuple using the sorted() function # Creating a nested tuple employee = ((10, 'Itika', 13000), (24, 'Harry', 15294), (15, 'Naill', 20001), (40, 'Peter', 16395)) # Sorting the tuple by default on the id print(sorted(employee)) # Sorting the tuple on id in reverse order print(sorted(employee, reverse = True)) # Sorting the tuple on name using lambda function print(sorted(employee, key = lambda x: x[1])) # Sorting the tuple on the name in reverse order print(sorted(employee, key = lambda x: x[1], reverse = True)) # Sorting the tuple on the word count print(sorted(employee, key = lambda x: x[2])) # Sorting the tuple on the word count in reverse print(sorted(employee, key = lambda x: x[2], reverse = True)) 

Išvestis:

 [(10, 'Itika', 13000), (15, 'Naill', 20001), (24, 'Harry', 15294), (40, 'Peter', 16395)] [(40, 'Peter', 16395), (24, 'Harry', 15294), (15, 'Naill', 20001), (10, 'Itika', 13000)] [(24, 'Harry', 15294), (10, 'Itika', 13000), (15, 'Naill', 20001), (40, 'Peter', 16395)] [(40, 'Peter', 16395), (15, 'Naill', 20001), (10, 'Itika', 13000), (24, 'Harry', 15294)] [(10, 'Itika', 13000), (24, 'Harry', 15294), (40, 'Peter', 16395), (15, 'Naill', 20001)] [(15, 'Naill', 20001), (40, 'Peter', 16395), (24, 'Harry', 15294), (10, 'Itika', 13000)]