სიები ( სია ) პითონში. ჩამოთვალეთ ფუნქციები და მეთოდები

პროგრამირებაში სიები შესაძლოა ისეთივე სასარგებლო მონაცემთა სტრუქტურაა, როგორც მასივები. რა არის სიები, როგორ შევქმნათ ისინი? როგორ ვიმუშაოთ სიებთან პითონში? ამის შესახებ ჩვენი სტატიიდან შეიტყობთ.

რა არის სიები პითონში?

სიები ( სია ) პითონში. ჩამოთვალეთ ფუნქციები და მეთოდები
პითონის მონაცემთა ტიპები: სიები

სიების ნაწილობრივი იდენტიფიცირება შესაძლებელია მასივებით, მაგრამ ჩამონათვალის განსხვავება და უპირატესობა (სხვაგვარად მათ ასევე უწოდებენ ჩამონათვალს) არის ის, რომ მათ შეუძლიათ მონაცემთა სხვადასხვა ტიპების გაერთიანება. ანუ, ჩამონათვალი ხსნის უფრო მეტ შესაძლებლობას ობიექტების ნებისმიერი თანმიმდევრობის შესანახად. ცვლადი, სახელწოდებით სია, შეიცავს მითითებას მეხსიერებაში არსებულ სტრუქტურაზე, რომელიც შეიცავს მითითებებს ალტერნატიულ სტრუქტურებზე.

სია პითონში არის შერეული ტიპის ობიექტების შეკვეთილი კოლექცია, რომელიც შეიძლება შეიცვალოს და რომელთა ობიექტები შეიძლება განსხვავდებოდეს.

Რას ნიშნავს? მოდით, დეტალურად განვიხილოთ განმარტება.

ჩამონათვალის ზომა შეიძლება შეიცვალოს, შემცირდეს, დაემატოს მას ახალი ხაზები. თქვენ ასევე შეგიძლიათ შეცვალოთ სიის მთელი სტრუქტურა. გაითვალისწინეთ, რომ ყოველ ჯერზე, როცა სიაში მეთოდი გამოიყენება, ორიგინალი სია იცვლება და არა ასლი.

მეტი სიცხადისთვის, შეგიძლიათ იფიქროთ Python-ის სიაში, როგორც პროდუქტების სიაში, რომლებიც უნდა შეიძინოთ მაღაზიაში. თუ სავაჭრო გეგმის შედგენისას ყველა საჭირო ელემენტი განლაგებულია ერთმანეთის ქვემოთ და თითოეულ მათგანს აქვს თავისი ხაზი, მაშინ პითონში ჩანაწერი შეიცავს ყველა ელემენტს, რომლებიც გამოყოფილია მძიმეებით და კვადრატულ ფრჩხილებში, რათა პითონმა შეძლოს ამის გაგება. აქ მითითებულია სია. ელემენტები ჩასმულია ბრჭყალებში. ეს სავალდებულო პირობაა, რადგან თითოეული ელემენტი ცალკე ხაზია.

სიის შექმნის გზები

გადავიდეთ კლასიკურ მაგალითზე, შევქმნათ სია, რომელსაც გამოვიყენებთ და შევცვლით მომავალში. ჩამონათვალის გენერირების რამდენიმე გზა არსებობს.

ერთ-ერთი მათგანია აპლიკაცია ჩაშენებული ფუნქციების სია ( ). ამისათვის თქვენ უნდა დაამუშავოთ ნებისმიერი ობიექტი, რომელიც შეიძლება განმეორდეს (სტრიქონი, ტიპი ან არსებული სია). ამ შემთხვევაში, სტრიქონი.

აი რა ხდება ბოლოს:

>>> სია ('სია') ['c', 'n', 'i', 'c', 'o', 'to']

მეორე მაგალითი გვიჩვენებს, რომ სიები შეიძლება შეიცავდეს შეუზღუდავი რაოდენობის ძალიან განსხვავებულ ობიექტებს. ასევე, ჩამონათვალი შეიძლება ცარიელი დარჩეს.

>>> s = [] # ცარიელი სია >>> l = ['s', 'p', ['isok'], 2] >>> s [] >>> l ['s', 'p' , ['ისოკი'], 2]

ჩამონათვალის ფორმირების შემდეგი, მესამე გზა არის ე.წ ჩამონათვალის გენერატორი.

ჩამონათვალის გენერატორი არის სინტაქსური კონსტრუქცია ჩამონათვალის შესაქმნელად. ის წააგავს for loop-ს.

>>> c = [c * 3 c-სთვის 'სიაში'] >>> c ['lll', 'iii', 'sss', 'ttt']

ის ასევე შეიძლება გამოყენებულ იქნას უფრო მოცულობითი სტრუქტურების შესაქმნელად:

>>> c = [c * 3 c-სთვის 'სიაში' თუ c != 'i'] >>> c ['lll', 'sss', 'tttt'] >>> c = [c + d for c 'სიაში', თუ c != 'i' d-სთვის 'სპამში' თუ d != 'a'] >>> c ['ls', 'lp', 'lm', 'ss', 'sp' , 'sm', 'ts', 'tp', 'tm']

თუმცა, ეს გენერირების მეთოდი ყოველთვის არ არის ეფექტური მრავალი ჩამონათვალის შედგენისას. ამიტომ მიზანშეწონილია გამოიყენოთ for loop სიების გენერირებისთვის.

თუ საჭიროა სიიდან რომელიმე ელემენტის მითითება, მაშინ გამოიყენება ინდექსები. თითოეულ ელემენტს აქვს საკუთარი ინდექსი.

ინდექსი არის ელემენტის რაოდენობა სიაში.

თუ გსურთ შეავსოთ ჩამონათვალი განმეორებადი, იდენტური ელემენტებით, გამოიყენება * სიმბოლო. მაგალითად, ჩამონათვალს უნდა დაამატოთ სამი იდენტური ნომერი: [100] * 3.

ჩამონათვალის ფუნქციები

ფუნქციები - ეს არის ალბათ პითონის მთავარი უპირატესობა სხვა პროგრამირების ენებთან შედარებით. ძირითადი ჩაშენებული ფუნქციები შეიძლება გამოყენებულ იქნას სიებში.

განვიხილოთ მათგან ყველაზე პოპულარული:

  • სია (დიაპაზონი ( )) – თუ დავალება არის თანმიმდევრული სიის შექმნა, მაშინ გამოიყენება დიაპაზონის ფუნქცია. ამ ფუნქციას აქვს შემდეგი ფორმები:
  1. დიაპაზონი (ბოლო). იგი გამოიყენება მაშინ, როდესაც აუცილებელია ნულიდან სასრულ რიცხვამდე ჩამონათვალის შექმნა.
  2. დიაპაზონი (დაწყება, დასასრული). მითითებულია როგორც საწყისი, ასევე დასასრული ნომრები.
  3. დიაპაზონი (დაწყება, დასასრული, ნაბიჯი). ნაბიჯის პარამეტრი განსაზღვრავს შერჩევის მახასიათებელს. მაგალითად, თუ თქვენ უნდა აირჩიოთ ყოველი მეხუთე ნომერი მიმდევრობიდან 1-დან 21-მდე, მაშინ მიღებული ჩამონათვალი ასე გამოიყურება: [10,15, 20].

დიაპაზონის ფუნქციას შეუძლია მნიშვნელოვნად შეამციროს კოდის რაოდენობა.

  • სელის (სია) – გაძლევთ საშუალებას გაიგოთ რამდენი ელემენტია სიაში.
  • დალაგებულია (სია, [გასაღები]) – ახარისხებს სიაში არსებულ ობიექტებს ზრდის მიხედვით.
  • მაქსიმუმი (სია) – აბრუნებს უდიდეს ელემენტს.
  • წთ (სია) – საპირისპირო ფუნქცია – საშუალებას გაძლევთ დააბრუნოთ ელემენტი მინიმალური მნიშვნელობით.

თქვენ ასევე შეგიძლიათ გამოიყენოთ სხვა ჩაშენებული ფუნქციები:

  • სია (ორმაგი) – აკონვერტებს ტოპ ობიექტს სიაში.
  • ჯამი (სია) - აჯამებს სიაში ყველა ელემენტს, თუ ყველა მნიშვნელობა არის რიცხვი, ვრცელდება როგორც მთელ რიცხვებზე, ასევე ათწილადებზე. თუმცა, ის ყოველთვის არ იღებს ამას სწორად. თუ სიაში არის არაციფრული ელემენტი, ფუნქცია გაუშვებს შეცდომას: „TypeError: მხარდაუჭერელი ოპერანდის ტიპ(ები) for +: 'int' და 'str'“.

ჩამონათვალის მეთოდები

სიები ( სია ) პითონში. ჩამოთვალეთ ფუნქციები და მეთოდები
პითონის მეთოდების სია

მოდით დავუბრუნდეთ მაღაზიაში შესაძენი ნივთების სიას და ვუწოდოთ მას მაღაზიების სია:

მაღაზიების სია = []

შემდეგი, განიხილეთ ჩამონათვალის მეთოდები:

  • დამატება (პუნქტი) – მისი დახმარებით შეგიძლიათ დაამატოთ ელემენტი სიაში. ამ შემთხვევაში, ახალი ელემენტი იქნება ბოლოს.

მოდით შეავსოთ ჩვენი ახალი ჩამონათვალი სწორი პროდუქტებით:

shoplist.append(პური)

shoplist.append(რძე)

  • სია.გაფართოება (A) – ამატებს „სიას სიაში“. ეს ფუნქცია დაზოგავს დროს, რადგან შეგიძლიათ რამდენიმე ელემენტის ერთდროულად დამატება. ვთქვათ, უკვე გვაქვს ხილის ჩამონათვალი, უნდა დავამატოთ ისინი ძირითად სიაში.

shoplist.extend (ხილი)

  • ჩასმა (ინდექსი, ელემენტი) – ათავსებს მითითებულ ინდექსის მქონე ელემენტზე მითითებულ მნიშვნელობას მითითებულ ინდექსამდე.
  • რაოდენობა (საქონელი) – აჩვენებს ელემენტის გამეორებების რაოდენობას.
  • სია.ამოღება (პუნქტის) არის საპირისპირო ფუნქცია სია.დამატება (x). მისი გამოყენება შესაძლებელია ნებისმიერი ელემენტის მოსაშორებლად. თუ არჩეული ელემენტი არ არის სიაში, შეცდომის შესახებ შეტყობინება.
  • pop ([ინდექსი]) – შლის არჩეულ ელემენტს და აბრუნებს მას იმავე გზით. თუ ელემენტი არ არის მითითებული, მაშინ ბოლო ელემენტი ამოღებულია სიიდან.
  • დალაგება ([გასაღები]) – აყენებს ელემენტებს სიაში ზრდადი თანმიმდევრობით, მაგრამ ასევე შეგიძლიათ მიუთითოთ ფუნქცია.
  • ინდექსი (პუნქტი) – აჩვენებს პირველი შერჩეული ელემენტის ინდექსს.
  • თქვენ შეგიძლიათ გააფართოვოთ სია, ანუ ასახოთ მისი ყველა ელემენტი მეთოდის გამოყენებით საპირისპირო (სია). ბოლო ელემენტი ხდება პირველი, ბოლოსწინა ელემენტი ხდება მეორე და ა.შ.
  • სიის ასლი იქმნება ბრძანებით ასლი (სია).
  • ღრმა ასლი (სია) - ღრმა კოპირება.
  • წაშალეთ ჩამონათვალის ყველა ელემენტი მეთოდის გამოყენებით გასუფთავება (სია).

აღსანიშნავია, რომ ჩამონათვალის მეთოდები განსხვავდება სიმებიანი მეთოდებისგან იმით, რომ ისინი დაუყოვნებლივ ცვლიან სიას, ანუ არ არის საჭირო შესრულების შედეგის დაბრუნება.

>>> l = [1, 2, 3, 5, 7] >>> l.sort() >>> l [1, 2, 3, 5, 7] >>> l = l.sort() > >> print(l) არცერთი

ქვემოთ მოცემულია სიებთან მუშაობის მაგალითი:

>>> a = [66.25, 333, 333, 1, 1234.5] >>> print(a.count(333), a.count(66.25), a.count('x')) 2 1 0 >>> a.insert(2, -1) >>> a.append(333) >>> a [66.25, 333, -1, 333, 1, 1234.5, 333] >>> a.index(333) 1 >> > a.remove(333) >>> a [66.25, -1, 333, 1, 1234.5, 333] >>> a.reverse() >>> a [333, 1234.5, 1, 333, -1, 66.25 ] >>> a.sort() >>> a [-1, 1, 66.25, 333, 333, 1234.5]

დატოვე პასუხი