სარჩევი[დამალვა][ჩვენება]
ეს ლექცია ეძღვნება პითონის კიდევ ერთ არსებით სტრუქტურას, სახელწოდებით tuple.
ტიპები
ტუპლები სიების მსგავსია, ამიტომ შეგვიძლია მათი გამოყენება ნივთების სიის შესანახად. მაგრამ სიებისგან განსხვავებით, ჩვენ არ შეგვიძლია მათი შეცვლა, ახალი ელემენტების დამატება ან არსებული ელემენტების ამოღება. შეგვიძლია ვთქვათ, რომ ტუპლები უცვლელია.
ნება მომეცით გაჩვენოთ. ტოპები იდენტიფიცირებულია ფრჩხილებით სიებში კვადრატული ფრჩხილების ნაცვლად.
numbers = (4, 1, 7, 5, 0, 9)
ახლა, თუ ჩვენ ამოვიღებთ ტოპების მეთოდების სიას, ხედავთ, რომ ჩვენ არ გვაქვს დამატებების ან ჩასმის მეთოდები, ამიტომ ახალი ელემენტების დამატება შეუძლებელია ამ ტოპში. ჩვენ გვაქვს მხოლოდ ორი მეთოდი: დათვლა და ინდექსი.
ჩვენ ვიყენებთ "თვლას" ნივთის შემთხვევების რაოდენობის დასათვლელად. „ინდექსი“ გამოიყენება ნივთის პირველი გაჩენის ინდექსის საპოვნელად. ასე რომ, ჩვენ შეგვიძლია მივიღოთ ინფორმაცია მხოლოდ ტუპლის შესახებ და ვერ შევცვლით. სხვათა შორის, ეს სხვა მეთოდები, რომლებსაც აქ ხედავთ, იწყება ორი ხაზგასმით.
ჩვენ ვუწოდებთ მათ, როგორც ჯადოსნურ მეთოდებს. ისინი უფრო მოწინავე თემაა და ჩვენ მათ მომავალ სერიაში შევეხებით.
გარდა შეუცვლელობისა, ტუპლები იზიარებენ სიის მახასიათებლებს.
პრაქტიკულად რომ ვთქვათ, უმეტესად თქვენ იყენებთ სიებს, მაგრამ ტუპლები ასევე სასარგებლოა. თუ გსურთ შექმნათ ელემენტების სია და დარწმუნდით, რომ არსად თქვენს პროგრამაში შემთხვევით არ შეცვლით ამ სიას, მაშინ უმჯობესია გამოიყენოთ ტუპლი.
შეფუთვა
ამ განყოფილებაში მე ვაპირებ გაჩვენოთ ძლიერი ფუნქცია, ჩვენ გვაქვს პითონში, სახელწოდებით unpacking.
მოდით განვსაზღვროთ ტუპლის „კოორდინატი“
coordinate = (1, 2, 3)
ახლა წარმოიდგინეთ, რომ ეს არის კოორდინატები "x", "y" და "z". ახლა ვთქვათ, ჩვენ გვინდა მივიღოთ ეს მნიშვნელობები და გამოვიყენოთ ისინი ჩვენს პროგრამაში რამდენიმე რთულ გამონათქვამში. შესაძლოა, ჩვენ გვსურს შევიტანოთ ისინი დიდი რთული ფორმულის ნაწილად.
ასე რომ, ჩვენ ერთად მოგვიწევს ასეთი კოდის დაწერა:
coordinate[0] * coordinate[1] * coordinate[2]
კოდის ეს ხაზი გაამრავლებს ყველა კოორდინატს, მაგრამ არაეფექტურია ჩვენი კოდის ასე დაწერა. პირველი, მოდით გამოვიყენოთ უკეთესი მიდგომა და შევინახოთ ეს კოორდინატები ცალკეულ ცვლადებში.
x = coordinate[0]
y = coordinate[1]
z = coordinate[2]
Ეს უკეთესია. მართალია? ასე რომ, ჯერჯერობით ახალი არაფერია. ახლა, ნება მომეცით გაჩვენოთ ძლიერი ფუნქცია, სახელწოდებით unpacking და ამით, ჩვენ შეგვიძლია მივაღწიოთ იგივე შედეგს გაცილებით ნაკლები კოდით.
x, y, z, = coordinate
ახლა, კოდის ეს ერთი ხაზი ზუსტად ექვივალენტურია ზემოთ დაწერილი კოდის სამი ხაზის. ნება მომეცით აგიხსნათ როგორ მუშაობს.
როდესაც პითონის ინტერპრეტატორი ხედავს ამ განცხადებას, ის მიიღებს პირველ პუნქტს ამ ტუპლში და მიანიჭებს მას ცვლადს. ანალოგიურად, მეორე და მესამე ელემენტი მიენიჭება ცვლადებს. ამით ჩვენ ვხსნით ამ ტოპს 3 ცვლადად. მოდით შევამოწმოთ ჩვენი გამომავალი.
შეფუთვა ასევე შეიძლება გაკეთდეს სიებით.
ლექსიკონები
ჩვენ ვაპირებთ გაეცნოთ ლექსიკონებს პითონში. ჩვენ ვიყენებთ ლექსიკონებს იმ სიტუაციებში, როდესაც გვსურს შევინახოთ ინფორმაცია, რომელიც მოდის გასაღები-მნიშვნელობის წყვილების სახით.
აი მაგალითი. იფიქრეთ კლიენტზე, რომელსაც აქვს მრავალი ატრიბუტი, როგორიცაა სახელი, ელფოსტა, ტელეფონის ნომერი, მისამართი და ა.შ. ახლა თითოეულ ამ ატრიბუტს აქვს ღირებულება. Მაგალითად:
name = Jay
email = [email protected]
ამ მაგალითში ჩვენი გასაღებებია სახელი, ელფოსტა და ტელეფონი. თითოეული გასაღები ასოცირდება მნიშვნელობასთან, ამიტომ აქ ვიყენებთ ლექსიკონს. ლექსიკონის საშუალებით ჩვენ შეგვიძლია შევინახოთ გასაღები-მნიშვნელობის წყვილი. ნება მომეცით გაჩვენოთ როგორ განვსაზღვროთ ლექსიკონი პითონში.
customer = {
"name": "Jay",
"email": "[email protected]",
"age": 30,
"is_verified": True
}
გასაღები შეიძლება დაყენდეს სტრიქონებზე, რიცხვებზე, ლოგიკურზე ან სხვა რამეზე. კლავიშები უნიკალურია და შეიძლება მხოლოდ ერთხელ განისაზღვროს, ანუ „ასაკს“ ვერ განვსაზღვრავ სხვა ნომრით. ისინი ასევე მგრძნობიარენი არიან ასოების მიმართ.
ახლა თუ დავწერ customer["name"],
ის დაურეკავს მომხმარებლის სახელს. მოდით დავბეჭდოთ ტერმინალზე:
ასევე შეგვიძლია გამოვიყენოთ მეთოდები ლექსიკონებით. ზემოთ ნაჩვენები იგივე ფუნქციის გამეორება შესაძლებელია "მიღების" მეთოდის გამოყენებით.
ზემოთ მოცემულ ორ მეთოდს შორის ერთი განსაკუთრებული განსხვავებაა. ნება მომეცით ვაჩვენო ეს.
თქვენ ხედავთ, რომ როდესაც ჩვენ უბრალოდ დავბეჭდეთ არარსებული გასაღები, მან შეცდომა გამოიწვია. მეორეს მხრივ, არარსებული გასაღების გამოძახების მეთოდის გამოყენებით მიიღება შედეგი „არცერთი“, რომელიც წარმოადგენს მნიშვნელობის არარსებობას. „მიღების“ მეთოდის გამოყენებისას, ჩვენ ასევე შეგვიძლია მივაწოდოთ ნაგულისხმევი მნიშვნელობა.
მაგალითად, თუ ამ ლექსიკონს არ აქვს „დაბადების თარიღის“ გასაღები, ჩვენ შეგვიძლია მივაწოდოთ ის ასე:
customer.get("birthdate", "Jan 01, 1994")
ასევე შეგვიძლია ლექსიკონში ნებისმიერი გასაღების განახლება, სიის მსგავსი. ვთქვათ, ჩვენ გვინდა განაახლონ სახელის გასაღები ჩვენს ლექსიკონში. აი, როგორ გავაკეთებთ ამას.
customer["name"] = "Shahbaz"
მსგავსი სინტაქსი შეიძლება გამოყენებულ იქნას ახალი გასაღების დასამატებლად ჩვენს ლექსიკონშიც. მოდით დავამატოთ გასაღები „დაბადების თარიღი“ ანალოგიურად.
customer["birthdate"] = "Jan 01, 1994"
ასე რომ, ეს არის პითონში ლექსიკონების გამოყენების საფუძვლები. ისინი ძალზე მნიშვნელოვანია და მათ აქვთ ბევრი აპლიკაცია რეალურ სამყაროში.
განახორციელოს
თქვენ აპირებთ დაწეროთ პროგრამა, რომელიც ციფრებს გადააქცევს ასეთ სიტყვებად:
Solution
აქ არის გამოსავალი თქვენ ბიჭებო.
phone = input("Phone: ")
digits_mapping = {
"1": "One",
"2": "Two",
"3": "Three",
"4": "Four",
"5": "Five",
"6": "Six",
"7": "Seven",
"8": "Eight",
"9": "Nine",
"0": "Zero"
}
output = " "
for ch in phone:
output += digits_mapping.get(ch, "!") + " "
print(output)
ანალოგიურად, თქვენ შეგიძლიათ შექმნათ სხვა სახალისო პროგრამები, როგორიცაა "emoji კონვერტორი" გაერთეთ PYTHONES!
Გახვევა!
იმედი მაქვს მოგეწონათ ეს ლექცია. შემდეგი, ჩვენ ვაპირებთ ჩავუღრმავდეთ პითონის პროგრამირების მნიშვნელოვან ასპექტს, ფუნქციებსა და პარამეტრებს.
დატოვე პასუხი