-
Notifications
You must be signed in to change notification settings - Fork 26
Mkr1 #34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Mkr1 #34
Changes from all commits
d17154b
21ca300
42b56ce
d13567d
452cf46
693025e
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,148 @@ | ||
| ============================== | ||
| Баскакова Олександра Володимирівна | ||
| ============================== | ||
|
|
||
|
|
||
| 1. Гілки в Git: для чого використовуються, який принцип роботи з гілками. Наведіть команди для створення нової гілки та переключення | ||
| між гілками. | ||
| Викорисовуэться для: | ||
| - якщо необхідно зробити зміни вже у існуючому проекті, але доступу до викладення змін немає - можна створити "форк" проекту | ||
| - якщо необхідно протестувати три різні версії одного проекту, аби обрати більше еффективний. | ||
| Створення: | ||
|
|
||
| >>> $ git branch <назва_гілки> #дана команда лише СТВОРЮЄ ГІЛКУ - вона НЕ ПЕРЕКЛЮЧАЄ на цю гілку | ||
|
|
||
| Переключення: | ||
|
|
||
| >>> $ git checkout <назва_існуючої_гілки> | ||
|
|
||
| 2. Що таке об'єднання гілок та для чого використовується? Конфлікти при об'єднанні. | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 1 |
||
| Наведіть приклад конфлікту (синтаксис) та команди для внесення змін до репозиторію після вирішення конфлікту. | ||
| Коли гілка виправлена, не містить помилок і готова стати частиною первинної бази коду - її можна об’єднати з головною гілкою. | ||
| Об’єднання – це злиття двох гілок. Будь-який новий/ оновлений код стане офіційною частиною кодової бази. Той, хто відгалужується від точки злиття, також буде мати цей код в своїй гілці: | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
с оговоркой, это касается лишь мастер-ветки |
||
|
|
||
| >>> $ git checkout master # перемикаємо на основну гілку | ||
| >>> $ git merge <назва_гілки_для_зиття> | ||
|
|
||
| Конфлікт злиття може статися під час злиття гілки, перебазування гілки або вибору комміту. Після виявлення конфлікту Git виділяє конфліктну область і просить вас її вирішити. Після вирішення конфлікту можна продовжувати об’єднання. | ||
|
|
||
| Конфлікт злиття відбувається у випадку змагання за коміти, коли в одних і тих самих рядках коду файлу відбуваються зміни, або файл був видалений в одній гілці, але існує та модифікується в іншій, Git не може автоматично вирішувати відмінност. Наприклад: | ||
| >>> $ git merge <назва_гілки_для_зиття> | ||
| >>> $ Auto-merging index.html | ||
| >>> $ CONFLICT (content): Merge conflict in index.html | ||
| >>> $ Automatic merge failed; fix conflicts and then commit the result | ||
|
|
||
| В такому випадку необхідно переглянути знову які саме файли спричинили конфлікт: | ||
| >>> $ git status | ||
| >>> On branch master | ||
| >>> You have unmerged paths. | ||
| >>> (fix conflicts and run "git commit") | ||
|
|
||
| >>> Unmerged paths: | ||
| >>> (use "git add <file>..." to mark resolution) | ||
| >>> both modified: index.html | ||
| >>> no changes added to commit (use "git add" and/or "git commit -a") | ||
|
|
||
| Все, що має конфлікти, які не були вирішені є в списку незлитих (unmerged) файлів. У кожен такий файл Git додає стандартні позначки-вирішенння для конфліктів, отже ви можете відкрити ці файли і вирішити конфлікти самостійно. У вашому файлі з конфліктом появиться блок, схожий на таке: | ||
|
|
||
| >>> <<<<<<< HEAD:index.html | ||
| >>> <div id="footer">contact : email.support@github.com</div> | ||
| >>> ======= | ||
| >>> <div id="footer"> | ||
| >>> please contact us at support@github.com | ||
| >>> </div> | ||
| >>> >>>>>>> <назва_гілки_для_злиття>:index.html | ||
|
|
||
| Щоб розв’язати цю несумісність,потрібно вибрати одну із версій, або самостійно поредагувати вміст файлу. Наприклад,можна замінити блок повністю: | ||
|
|
||
| >>> <div id="footer"> | ||
| >>> please contact us at email.support@github.com | ||
| >>> </div> | ||
|
|
||
| Можна використовувати графічний інструмент для розв’язання конфліктів, виконайте команду git mergetool, яка запустить графічний редактор та проведе вас по всьому процесу: | ||
|
|
||
| >>> $ git mergetool | ||
|
|
||
| 3. Строкові типи Python. У чому відмінність між Unicode-строкою та байтовою строкою? Наведіть приклад коду, що представляє строку | ||
| ``'вічність'`` у вигляді байтової строки з кодуванням UTF-8 та KOI8-U | ||
|
|
||
| На мові Python пыдтримються три строкових типа: | ||
| - str – призначені для представлення тексту у форматі Unicode та інших систем кодування - wей формат містить символи ASCII і символи в інших кодуваннях; | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
очень спорное утверждение. |
||
| - bytes – призначені для представлення двійкових даних; | ||
| - bytearray – призначені для представлення подвійних даних з урахуванням змін у типі байтів. | ||
| Передбачається, що строка - це послідовність символів: кодові точки Юнікоду - це абстрактна концепція і її неможливо зберігати безпосередньо на диску. | ||
| Байтова строка - це послідновність байтів - байти можнна зберігати безспосередньо на диску. | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 0.5 |
||
| >>> print("'вічність'".encode("utf-8")) | ||
| >>> print("'вічність'".encode("koi8-u")) | ||
|
|
||
|
|
||
| 4. Якому емодзі відповідає байтова строка ``b'\xff\xfe=\xd8\r\xdc'`` (UTF-16)? Що значить даний запис байтової строки? | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 1 |
||
| Наведіть приклад коду, що перекодує дану строку в UTF-8 та вкажіть результат у вигляді коментаря | ||
| Емодзі змії. Код для перевірки: | ||
|
|
||
| >>> emoji = b'\xff\xfe=\xd8\r\xdc'.decode(encoding="utf-16") | ||
| print ('', emoji) | ||
|
|
||
| Вміст строки, точно еквівалентно зрізу байтів, а літера "b" на початку вказуэ саме на те, що дана строка байтова. | ||
|
|
||
| На оснві кода для перевірки можна створити код, що перекладає дану строку в UTF-8: | ||
|
|
||
| >>> emoji = b'\xff\xfe=\xd8\r\xdc'.decode(encoding="utf-16") | ||
| >>> print(" ", emoji.encode("utf-8")) | ||
| >>> # b'\xf0\x9f\x90\x8d' | ||
|
|
||
| 5. Створіть функцію, яка приймає в якості першого аргументу бажаний опір паралельно з'єднаних резисторів *R* [Ом], | ||
| а в якості подальших аргументів – величини резисторів, що є в наявності [Ом]. | ||
| Функція повертає кортеж (tuple), першим елементом якого є словник типу ``{номінал: кількість}``, а другим | ||
| елементом – абсолютне відхилення результуючого опору від бажаного [Ом]. | ||
|
|
||
| >>> from collections import Counter | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 0.2 |
||
| >>> def resistance(desired_resistance, *args): | ||
| >>> inv_res_resistance = 0 | ||
| >>> for i in args: | ||
| >>> inv_res_resistance += 1/i | ||
| >>> res_resistance = 1/inv_res_resistance | ||
| >>> return dict(Counter(args)), abs(res_resistance-desired_resistance) | ||
| >>> first_output, second_output = resistance(18, 7, 8, 9, 9) | ||
| >>> print(first_output, second_output) | ||
|
|
||
| 6. Що таке she-bang та для чого використовується? Який she-bang буде максимально коректним для Python 3? | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 1 |
||
| Чи використовується she-bang в скриптах? Якщо так, чому? Якщо ні, коли? | ||
| Шибенг - це послідовність із двох символів: «решітки» та знака оклику (#!), яка ставиться на початку файлу (текстового), написаного на скриптовій мові. | ||
| У системах Unix сценарії Python можна зробити безпосередньо виконуваними, як і сценарії оболонки, шляхом додавання рядка шибенгу на почтаку коду: | ||
| >>> /usr/bin/env python3.5 | ||
|
|
||
| Коли даний скрипт виконується як програма, то кінець рядка після шибенгу розгялдається завантажувачем як ім'я програмим, що інтерпритує код. Завантажувач запускає дану программу і передає їй ім'я файлу скрипту з шебенгом як параметр. | ||
| У системах Windows не існує поняття «режим виконання». Програма встановлення Python автоматично пов’язує файли .py з python.exe, так що подвійне клацання файлу Python запускає його як сценарій. | ||
|
|
||
| Скрипту можна надати режим виконання або дозвіл за допомогою команди chmod: | ||
| >>> $ chmod +x myscript.py | ||
|
|
||
| 7. Які цикли Python вам відомі? Який цикл буде виконуватися швидше та чому? | ||
| Наведіть приклад коду для виводу списка за допомогою кожного з типів циклу. | ||
| - цикл while - один із самих універсальних циклів в Python - виконує тіло циклу до тих пір, доки умова циклу істинна, через що досить повільний. тому досить повільний: | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
он медленный из-за того, что выполняется со скоростью интерпретации байткода
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 0.9 |
||
|
|
||
| >>> num = [1, 2, 3, 4, 5] | ||
| >>> while i < len(lst): | ||
| >>> print(lst[i]) | ||
| >>> i += 1 | ||
|
|
||
| - цикл for - трохи складніший і менш універсальний - проходить по будь-яким ітерованим об'єктам (строка або список), і під час кожного проходу виконується тіло циклу - таким чином виконується швидше: | ||
|
|
||
| >>> num = [1, 2, 3, 4, 5] | ||
| >>> for i in range(len(num)): | ||
| >>> print(num[i]) | ||
|
|
||
| 8. Які цикли Python вам відомі? Яким чином можна реалізувати "якщо не було виконано жодного разу" з циклами? | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 0.45 |
||
|
|
||
| Відповідь на першепитання аналогічна до відповіді на перше питання в блоці №7. | ||
|
|
||
| Якщо не було виконало жодного разу: | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Это делается с помощью конструкции else: for ix in lst:
....
else:
.... |
||
|
|
||
| - Для while: | ||
|
|
||
| >>> while type(n)!= int #цикл буде виконуватись поки аргумент n не прийме знаяення цілого числа | ||
|
|
||
| - Для for: | ||
|
|
||
| >>> for i in !spisok #цикл буде виконуватись доки значення аргументу i не належить значенню аргумента список | ||
|
Member
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,12 @@ | ||
| ============================================= | ||
| Embedded Linux course: lab works | ||
| ============================================= | ||
|
|
||
| Author | ||
| ----- | ||
|
|
||
| * **Full name:** Baskakova Olexandra | ||
| * **Organization/University:** `Igor Sikorsky Kyiv Polytechnic Institute <https://kpi.ua/en>`__ | ||
| * **Department:** `The Department of Design of Electronic Digital Equipment <http://keoa.kpi.ua/go/cPath/0_20737/lang/en/index.htm?language=en>`__ | ||
| * **Telegram:** `@Akira_Deer <https://tg.me/Akira_Deer>`__ | ||
| * **Email:** `lignum.elf@gmail.com <mailto:lignum.elf@gmail.com>`__ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
0.95