Size: a a a

Хирьянов Т.Ф., Практика программирования на Python 3 (2019)

2020 May 21

-

-a in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Кирилл Картвелишвили
вам нужно пройти чуть дальше материал, приостановите пока занятия практикой и сконцентрируйтесь на теории. какой источник информации вы используете? это может быть ютуб курс, книжка, сборник статей, что угодно
Хорошо. Спасибо. Я 1 лекцию на половину досмотрел
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
я думаю там где-то на 2-3 узнаете о функциях. но если вкратце, то если нам нужно в коде выполнять однотипные действия в разных участках программы, то лучше всего этот код вынести в функцию. функция - это объект, который можно вызвать, чтобы он выполнил поставленную перед ним задачу.
в питоне функции определяются с помощью ключевого слова def (сокращение от define - определить). функция может принимать аргументы - какие-то объекты, с которыми функция будет оперировать.
def greet(name):
   print("Hello, " + name)

вот например. функция имеет название greet (поприветствовать), в качестве аргумента она принимает name (имя) и выводит в консоль приветственное сообщение пользователю.
теперь в коде можно её просто вызвать с помощью круглых скобок и передать внутрь нужное имя.
greet("John")
в ответ мы получим "Hello, John".
пока может быть совсем ничо непонятно, смотрите лекции, всё станет очевидно
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
это делает код легкочитаемым. поприветствуй Джона выглядит понятнее, чем напечатай Привет + имя
источник

-

-a in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Кирилл Картвелишвили
это делает код легкочитаемым. поприветствуй Джона выглядит понятнее, чем напечатай Привет + имя
Как они взаимодействуют друг с другом. Например если я напишу ещё одну функцию def т.е подпрограмм у?
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
очень просто взаимодействуют. одна функция может легко вызывать другую внутри себя
источник

-

-a in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Кирилл Картвелишвили
очень просто взаимодействуют. одна функция может легко вызывать другую внутри себя
Спасибо теперь понятно немного стало🙂
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
это уже вопрос декомпозиции задачи. нехорошо чтобы была одна функция, которая может всё и сразу, кажется что это удобно, как швейцарский нож, но это совсем не так
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
желательно чтобы функция отвечала за одно действие, и её название соответствовало тому, что она делает. если функция подсчитывает сумму всех чисел в последовательности, она должна называть count_sum или get_sum, можно просто sum
источник

Е

Евгений in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Пожалуй, сюда тоже скину.
https://www.youtube.com/watch?v=QQZmDWnV618
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
мне предыдущее интервью про scala понравилось очень
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
вообще у бороды неплохие интервью
источник

M

Mikhail G. in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Товарищи, простите мою тупость, но почему оно печатает только один символ?
string = "aaaabbcaa"
len = len(string)
index = 0

for s in string:
   while index < len:
       print(index,s)
       index += 1
источник

e

everblade in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Попробуй заменить название len
источник

e

everblade in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Оно совпадет с функцией, не очень хорошо
источник

EZ

Evgeniy Zebolov in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Mikhail G.
Товарищи, простите мою тупость, но почему оно печатает только один символ?
string = "aaaabbcaa"
len = len(string)
index = 0

for s in string:
   while index < len:
       print(index,s)
       index += 1
работает сия запись так
1) на первой итерации в цикле фор ты получаешь первый символ
2) попадаешь в цикл вайл, в котором печатаешь этот символ и циферки, от 0 до длины строки,
3) выходишь из цикла вайл на вторую итерацию цикла фор, получаешь в s значение второго символа строки, но в цикл вайл не попадаешь, потому что индекс уэе больше длины строки.
4) то же самое происходит на всех последующих итерациях цикла фор
источник

E

Eugene in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Oleg Makarikhin
оставаясь с почти тем-же кодом, можно решить вопрос выбором другого вида цикла. https://pastebin.com/fYFSjwhQ
но опять таки вынести penup за пределы цикла, и в цикле, в конце сделать pendown (таким образом первая итерация цикла фактически выполнится в положении penup). это обратная ошибка-на-единицу, часто что тут встречается с роботом и коридором.
Спасибо большое, работает! Но я не очень понимаю ситуацию с pendown. Как будто черепашка сначала переходит в координату, а потом рисует? Как это может быть?
источник

Е

Евгений in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Mikhail G.
Товарищи, простите мою тупость, но почему оно печатает только один символ?
string = "aaaabbcaa"
len = len(string)
index = 0

for s in string:
   while index < len:
       print(index,s)
       index += 1
Дебаггер пробовали?
источник

AN

Alexander Nan 🕵️🔹... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Ребята, кто может пояснить, почему время работы данного цикла (N^2-N)/2. Откуда взялось это деление на 2?
источник

AN

Alexander Nan 🕵️🔹... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
источник

OM

Oleg Makarikhin in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
Eugene
Спасибо большое, работает! Но я не очень понимаю ситуацию с pendown. Как будто черепашка сначала переходит в координату, а потом рисует? Как это может быть?
она находится в каких-то координатах. если pendown() тогда при движении в другие коордианты рисует.
если penup() то не рисует
источник