-
კურსის მთავარი გვერდი
-
Introduction & Setup
-
Variables & Data Types
-
Data Structures
- Control Flow
- Writing Functions
- Python Libraries
- What Next?
Variables & Data Types
https://www.youtube.com/watch?v=Usnt0phv2SA
ცვლადები და მონაცემთა ტიპები
დღევანდელი გაკვეთილის თემაა ცვლადები და მონაცემთა ტიპები პითონში. პირველ გაკვეთილში დავაინსტალიეთ VS Code, სადაც დავწერთ პითონის კოდს. ამისათვის საჭიროა გავხსნათ VS Code და შევქნათ ახალი ფაილი. ამისათვის დააჭირეთ მარცხენა ზედა კუთხეში “File”-ს და შემდეგ “New File”-ს. (სწრაფი გზა კლავიატურით: Ctrl+N)
ეს შექმნის ახალ ფაილს, რასაც ავტომატურად “Untitled-1” ჰქვია, ახლა საჭიროა შევინახოთ ეს ფაილი სასურველი სახელითა და აუცილებელი ფორმატით. ამისათვის დააჭირეთ ისევ “File”-ს და შემდეგ “Save” (სწრაფი გზა კლავიატურით: Crtl+S), აირჩიეთ სად გსურთ ფაილის შენახვა, შემდეგ დაარქვით ფაილს რაც გსურთ, მაგრამ სახელის შემდეგ აუცილებლად უნდა დაწეროთ .py (იხილეთ სურათი).
ამ შემთხვევაში მე დავარქვი ფაილს “practice” და ამას დავუმატე .py, რაც, კიდევ ერთხელ ვიმეორებ: აუცილებელია! .py კომპიუტერს ეუბნება, რომ ეს არის პითონის ფაილი/სკრიპტი. ყველა პროგრამირების ენას აქვს საკუთარი ფაილის ფორმატი, პითონის არის .py. ამის გარეშე ვერ შევძლებთ კოდის პითონში გაშვებას. ფაილის შენახვის შემდეგ, VS Code-მაც იცის უკვე, რომ ეს პითონის ფაილია და ამიტომ ავტომატურად მოგცემთ მარჯვენა ქვედა კუთხეში შეტყობინებას, რომ მას პითონის ინტერპრეტორი სჭირდება. დააჭირეთ “Select Python Interpreter” ღილაკს და აირჩიეთ თქვენს მიერ პირველ გაკვეთილში დაინსტალირებული პითონის ვერსია (იხილეთ სურათები).
ვიდეო გაკვეთილებში კოდს VS Code-ში დავწერთ და ლოკალურად ჩვენს კომპიუტერზე გავუშვებთ, მაგრამ ამ სტატიის ფორმატში გამოვიყენებთ repl.it სერვისს კოდის დასაწერად, რაც ამ სტატიას და პითონის კოდს ინტერაქტიულს გახდის 🙂
ახლა კი გადავიდეთ კოდის წერაზე. ტრადიციულად, როდესაც ადამიანი ახალ პროგრამირების ენას სწავლობს, პირველ პროგრამად ყოველთვის ვწერთ რომელიც უბრალოდ დაწერს: Hello, World!
ამას პითონში შემდეგნაირად ვწერთ:
print არის ერთ-ერთი ყველაზე ხშირად გამოყენებული ბრძანება/ფუნქცია. იგი უბრალოდ იმ მონაცემს წერს ეკრანზე, რასაც ჩვენ მას გადავცემთ, ამ შემთხვევაში “Hello, World!”. თუ ტექსტის დაწერა გვსურს, ტექსტი უნდა იყოს ჩაწერილი “”-ს შორის, ხოლო სხვა დანარჩენი მონაცემები “”-ის გარეშე. მაგალითად: print(5), დაბეჭდავს 5-ს, როგორც რიცხვს. print-ს შეგვიძლია ასევე გადავცეთ უფრო რთული სახის მონაცემი, მაგალითად მათემატიკური ოპერაცია: print(6+2) ეს დაბეჭდავს 8-ს.
პითონში, ისევე როგორც ფაქტიურად ყველა პროგრამირების ენაში, ცვლადები და სხვადასხვა სახის მონაცემები პროგრამის ფუნდამენტალური ნაწილია. არსებობს არაერთი ტიპის მონაცემი, ჩვენ ამ გაკვეთილში რამდენიმე უმნიშვნელოვანესს და ყველაზე ხშირად გამოყენებულ მონაცემთა ტიპებს გავივლით.
int: Integer – მთელი რიცხვი.
მაგალითად შევქმნათ ცვლადი x და მასში შევინახოთ მონაცემი 5. შევქმნათ ცვლადი y და მასში შევინახოთ 2. ეს შემდეგნაირად ხდება პითონში:
x = 6
y = 2
ამ ცვლადებზე შეგვიძლია მათემატიკური გამოთვლები განვახორციელოთ.
მათემატიკური ოპერატორები პითონში შემდეგნაირად იწერება:
მიმატება: +
გამოკლება: –
გაყოფა: /
გამრავლება: *
ხარისხი: **
როგორც ხედავთ print-ს ტექსტისა და ცვლადის კომბინაციაც შეგვიძლია ერთად გადავცეთ, რის მეშვეობითაც შეგვიძლია ჩამოვაყალიბოთ რთული წინადადებები. თითოეული მონაცემი გამოიყოფა მძიმის საშუალებით. ასევე, თუ შეამჩნიეთ 6-ის 2-ზე გაყოფით პითონმა 3.0 დაგვიბრუნა და არა უბრალოდ 3. ეს იმიტომ, რომ პროგრამირებაში არსებობს მონაცემთა ტიპი: float. ამ სიტყვის ქართული შესატყვისი ვერ მოვიფიქრე :), ამიტომ უბრალოდ განვმარტავთ თუ რას ნიშნავს, float არის ასე ვთქვათ ნაშთიანი გაყოფით მიღებული, არამთელი რიცხვი. მაგალითად: 7/2=3.5 ანუ 3.5 არის float რიცხვი და არა int (მთელი).
მიუხედავად იმისა, რომ 6 ზუსტად იყოფა 2-ზე, პითონი მაინც 3.0-ს გვაძლევს, რადგან გაყოფის შედეგად პითონში ავტომატურად float მიიღება, თუნდაც რეალურად ეს ისევ მთელი რიცხვი იყოს.
ჩვენ უკვე ვისწავლეთ კიდევ ერთი მონაცემის ტიპი, რომელიც ჯერ არ აღმინიშნავს, კონკრეტულად: str (string), ანუ უბრალოდ ტექსტი. ნებისმიერ მონაცემს, რომელსაც ჩავწერთ ” “-ს შორის, არის ავტომატურად ტექსტი. მაგ:
name = “David”
ყურადღება!
” ” -ში რომ რიცხვი ჩავწეროთ, პითონი ამასაც ტექსტად აღიქვამს. ანუ თუ გვაქვს: x = 6 და y = “2” მათზე არითმეტიკულ მოქმედებებს ვერ ჩავატარებთ, რადგან y არის 2 როგორც ტექსტი და არა როგორც რიცხვი, რიცხვისა და ტექსტის მიმატება კი მათემატიკურად შეუძლებელია.
თუ შევეცდებით ეს ოპერაცია ჩავატაროთ, პითონი დაგვიბრუნებს შეცდომას. როდესაც ადამიანი პირველად იწყებს პროგრამირების სწავლას, ეს წითლად დაწერილი კრიპტული ტექსტი, რომლიდანაც ერთი შეხედვით აზრის გამოტანა შეუძლებელია, ძალიან შემაშინებელია 🙂
ჩემი მოვალეობაა გითხრათ: ნუ შეშინდებით! შეცდომებს და ერორებს დადებითადაც კი შეგვიძლია შევხედოთ და მათი საშუალებით ბევრი რამ ვისწავლოთ. მაგალითად, ვცადოთ ზემოდხსენებული 6+”2″ პითონში და ვნახო რა მოხდება.
მივიღეთ შემდეგი შეცდომა:
“Traceback (most recent call last):
File “main.py”, line 3, in
z = x+y
TypeError: unsupported operand type(s) for +: ‘int’ and ‘str'”
ზოგადად პითონს ძალიან “მეგობრული” ერორები გამოაქვს 🙂 კონკრეტულად გვეუბნება თუ სად მოხდა შეცდომა და რა იყო შეცდომა. როგორც წესი ბოლო წინადადებაა ყველაზე მნიშნვნელოვანი, რაც პრობლემას აღწერს. პითონში არსებობს არაერთი ტიპის ერორი, ამ შემთხვევაში მივიღეთ “TypeError”, ეს იმის მანიშნებელია, რომ ვცადეთ რაღაც ოპერაციის ჩატარება სხვადასხვა ტიპის მონაცემებზე რაც არ არიან თავსებადები. რაც ჩვენ ნამდვილად გავაკეთეთ. ასევე დაწვრილებით გვეუბნება, რომ “int” (მთელი რიცხვი) და “str” (ტექსტი) შეუძლებელია მათემატიკურად დავუმატოთ ერთმანეთს. იმ შემთხვევაში თუ ერორის ტექსტი გაუბერია: დაგუგლეთ! (დააჭირეთ ამ ტექსტს მაგალითისათვის :))
მონაცემის ტიპის შემოწმება მარტივად შეგვიძლია, ამისათვის არსებობს მზა ფუნქცია type(). პითონს გააჩნია უამრავი ასეთი ჩაშენებული ფუნქცია, მათ მომდევნო გაკვეთილებში გავეცნობით და ხშირად გამოვიყენებთ მონაცემების მანიპულაციისათვის.
როგორც შეამჩნიეთ, print-ს შეგვიძლია ასევე ფუნქციები გადავცეთ არგუმენტებად. ანუ print არის ერთი შეხედვით ძალიან მარტივი ფუნქცია, მაგრამ რეალურად იგი ძალიან მძლავრი და გამოსადეგია, ასევე ძალიან ხშირად გამოიყენება ე.წ. debugging-ისათვის, ანუ კოდში შეცდომების საპოვნელად. ამ ტექტიკას მოგვიანებით შევეხებით.
ამ გაკვეთილის ბოლო თემა არის True/False ბულის ტიპები.
True – მართალი, ნამდვილი, ჭეშმარიტი
False – მცდარი, არასწორი
ორივე მათგანი არის ე.წ ბულის ტიპი (სახელი დაკავშირებულია მათემატიკოს ჯორჯ ბულთან, რომელიც ბულის ალგებრის შემქნელია).
True და False ძალიან ხშირად გამოიყენება პროგრამირებაში, ანუ მისი საშუალებით შეგვიძლია მაგალითად დავუსვათ პითონს კითხვა და მივიღოთ პასუხი: “კი” ან “არა”, “ჭეშმარიტი” ან “მცდარი”.
მაგალითი:
x = 5
y = 4
შეგვიძლია ვკითხოთ პითონს x უდრის y-ს? რა თქმა უნდა x არ უდრის y-ს ამ შემთხვევაში და შესაბამისად პითონი დაგვიბრუნებს პასუხს False
ყურადღება!
True და False არის ე.წ case-sensitive. ანუ true არ არის იგივე რაც True. პირველი ასო დიდი უნდა იყოს: True, False.
ორი (ან მეტი) მონაცემის/ცვლადის ერთმანეთთან შედასარებლეად პითონი იყენებს შემდეგ ოპერატორს “==” (ორი ტოლობის ნიშანი ერთად).
ეს არ აგერიოთ უბრალოდ ტოლობის ნიშანში “=”. ანუ ერთი ტოლობის ნიშნით შეგვიძლია ცვლადში მონაცემის შენახვა, ხოლო შესადარებლად საჭიროა ორი ტოლობის ნიშანი.
შემდეგ გაკვეთილებში უკვე შევქმნით გაცილებით რთულ ლოგიკურ წინადადებებს ბულის ტიპებისა და ლოგიკური ოპერატორების დახმარებით.