Дәрістер қарағанда 2021 Дәріс Деректер құрылымы және алгоритмдер түсінігі



бет9/10
Дата06.03.2023
өлшемі152,5 Kb.
#71979
түріПрограмма
1   2   3   4   5   6   7   8   9   10
Байланысты:
Эл лекция Алгоритм прог тілдері

Кортеждер


Деректердің қарапайым құрылымдарын құру үшін, мәндер коллекциясын бірыңғай нысанға орауға мүмкіндік беретін кортеждерді пайдалануға болады. Кортеж жай жақшадағы мәндер тобымен
жасалады, мысалы: stock = ('GOOD', 100, 490.10) address = ('www.python.org', 80)
person = (first_name, last_name, phone)
Python интерпретаторы кортеждер жай жақшаға алынбаса да жақсы таниды:
stock = 'GOOD', 100, 490.10
address = 'www.python.org', 80
person = first_name, last_name, phone
Толық болу үшін бос немесе 1 элементтен тұратын кортеждерді анықтау мүмкіндігі бар.
синтаксис:
a = () # Кортеж с нулевым количеством элементов (пустой
кортеж) b = (item,) # Кортеж с одним элементом (обратите внимание на
запятую в конце) c = item, # Кортеж с одним элементом (обратите внимание на
запятую в конце)
Кортеж элементтері тізімдер сияқты бүтін индекстердің көмегімен алынуы мүмкін. Алайда төменде көрсетілгендей кортеждерді көптеген айнымалыларға тарқату жиі қолданылады:
name, shares, price = stock host, port = address
first_name, last_name, phone = person
Кортеждер тізімдер сияқты іс жүзінде бірдей операцияларды қолдайды (индекс бойынша элементтерге қалай қол жеткізу, кесіндіні алу және конкатенация), кортеж мазмұнын құрғаннан кейін өзгерту мүмкін емес жаңа элементті өзгертуге, жоюға немесе қолданыстағы кортежге қосуға болмайды). Осы себепті кортежді жеке коллекция ретінде емес, бірнеше бөліктен тұратын объект жаңа кірістіруге немесе бар объектілерді жоюға болатын нысандар элементтер, бірыңғай нысан ретінде қарастыру дұрыс.
Кортеждер мен тізімдердің үлкен ұқсастығы салдарынан кейбір программистер кортеждерді толығымен елемеуге және тізімдерді пайдалануға бейім. Дегенмен, бұл айтарлықтай дәрежеде дұрыс емес
. Егер бағдарламада көптеген шағын тізімдер (әрқайсысы он элементтен артық емес болса), онда олар кортеждермен салыстырғанда жадтың үлкен көлемін алады. Бұл тізімдерді сақтау үшін, операцияларды орындау жылдамдығын оңтайландыру, жаңа элементтерді қосу мақсатында көп жад бөлінеді. Кортеждер тек оқу үшін қол жетімді болғандықтан, оларды сақтау үшін аз жад пайдаланылады.
Кортеждер мен тізімдер бірге жиі пайдаланылады. Мысалы, келесі
бағдарлама мәндер бір-бірінен бағандардың саны арқылы бөлінетін файлдан деректерді оқуды қалай ұйымдастыруға болатынын көрсетеді:
# Файл содержит строки вида “name,shares,price” filename = “portfolio.csv” portfolio = [] for line in open(filename): fields = line.split(“,”) # Преобразует строку в список name = fields[0] # Извлекает и преобразует отдельные значения
полей shares = int(fields[1]) price = float(fields[2]) stock = (name,shares,price) # Создает кортеж (name, shares, price) portfolio.append(stock) # Добавляет в список записей split () жолдық әдісі көрсетілген таңба бойынша жолды бөледі және мәндер тізімін жасайды. Осы бағдарламада құрылған portfolio деректер құрылымы екі өлшемді жолдар мен бағандар. Әр жол кортеж ретінде ұсынылған және төменде көрсетілгендей алынуы мүмкін: >>> portfolio[0]
(‘GOOG’, 100, 490.10)
>>> portfolio[1]
(‘MSFT’, 50, 54.23) >>>
Жеке мәндер келесі тәсілмен алынуы мүмкін:
>>> portfolio[1][1]
50
>>> portfolio[1][2]
54.23 >>>
Төменде барлық жазбаларды өтуді және айнымалылардың жиынындағы өріс мәндерін тарқатуды жүзеге асырудың қарапайым көрсетілген: total = 0.0 for name, shares, price in portfolio: total += shares * price



Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   10




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет