Работаем дома

Форум о заработке в Интернет, фриланс, и о хобби, которое может принести деньги


    Python 3- попытка научиться программингу

    kmiha
    kmiha
    Постоялец
    Постоялец


    Сообщения : 186
    Репутация : 1
    Дата регистрации : 2019-11-21

    Python 3- попытка научиться программингу Empty Python 3- попытка научиться программингу

    Сообщение автор kmiha Пн 25 Ноя 2019 - 14:43

    Эту тему я сделал для себя. Так сказать мой черновик и пометки для программирования на языке Python , версии 3 и выше.

    Python - довольно простой язык программирования, по крайней мере так везде говорят, ну что ж, попробуем.

    Для того, чтобы работали программки, следует скачать у становить Python 3. версии (по ссылке можно выбрать любую). Хочу заметить версия 2.x.x очень сильно отличается от 3.x.x, да и устарела довольно сильно, поэтому советую 3 версию Python.
    Я использовал Python 3.6.0

    P.S интерактивная среда разработки Python настолько удобна и быстра при запуске, что я даже предпочитаю вместо обычного калькулятор windows использовать среду разработки Python  What a Face
    kmiha
    kmiha
    Постоялец
    Постоялец


    Сообщения : 186
    Репутация : 1
    Дата регистрации : 2019-11-21

    Python 3- попытка научиться программингу Empty Re: Python 3- попытка научиться программингу

    Сообщение автор kmiha Пн 25 Ноя 2019 - 15:42

    Одна из особо неудобных фенечек этого языка в том, что написанные программы надо запускать из интегрированной среды разработки. То есть открыв среду, выбрать Open (найти файл на компьютере). Открывается текст программы в блокноте Python, потом выбрав Run или F5 программа запускается, и процесс работы уже отображается в среде разработки.  К примеру в обычных программах под Windows, программы открываются двойным щелчком мыши и работают ...  Тут не так, неудобно.   Sad Python программа же только откроет консольное окно и сразу же закроется...  Хотя я бы сказал непривычно. Приходится делать несколько дополнительных действий.  И как я понимаю язык Python всё таки не полноценный язык, а скриптовый язык программирования. Хотя по заверениям разработчикам в нём возможно создавать и игры и сайты и работать с базами данных ... ну да ладно, посмотрим.

    Итак, моя первая программулька.


    Код:
    #Эта программа приветствует и спрашивает имя
    print('Привет, Мир!')
    print('Как тебя зовут?')
    myName=input()
    print('Я так рада видеть тебя ', myName)


    Можно попробовать, как работает, вставив в Python блокнот (в среде разработки - File - New File), открывается блокнот Python, куда вставляете код. Потом F5 или Run Module
    kmiha
    kmiha
    Постоялец
    Постоялец


    Сообщения : 186
    Репутация : 1
    Дата регистрации : 2019-11-21

    Python 3- попытка научиться программингу Empty Re: Python 3- попытка научиться программингу

    Сообщение автор kmiha Пн 25 Ноя 2019 - 17:16

    И в первом же задании меня ждало разочарование в коде от автора ... Которое упорно не работало, по условию задачи надо было написать программу угадай число примерно такого вида:


    Привет! Как тебя зовут?
    Михаил
    Что ж, Михаил, я загадываю число от 1 до 20.
    Попробуй угадать.
    10
    Твое число слишком большое.
    Попробуй угадать.
    2
    Твое число слишком маленькое.
    Попробуй угадать.
    4
    Отлично, Михаил! Ты справился за 3 попытки!

    и приводился код от автора, который упорно не хотел работать и выдавал ошибку.

    Код:
    1. # Это игра по угадыванию чисел.
    2. import random
    3.
    4. guessesTaken = 0
    5.
    6. print('Привет! Как тебя зовут?')
    7. myName = input()
    8.
    9. number = random.randint(1, 20)
    10. print('Что ж, ' + myName + ', я загадываю число от 1 до 20.')
    11.
    12. for guessesTaken in range(6):
    13.    print('Попробуй угадать.') # Четыре пробела перед именем функции print
    14.    guess = input()
    15.    guess = int(guess)
    16.
    17.    if guess < number:
    18.        print('Твое число слишком маленькое.') # Восемь пробелов перед именем функции print
    19.
    20.    if guess > number:
    21.        print('Твое число слишком большое.')
    22.
    23.    if guess == number:
    24.        break
    25.
    26. if guess == number:
    27. guessesTaken = str(guessesTaken + 1)
    28. print('Отлично, ' + myName + '! Ты справился за ' + guessesTaken + ' попытки!')
    29.
    30. if guess != number:
    31. number = str(number)
    32. print('Увы. Я загадала число ' + number + '.')

    Этот код у меня ну напрочь не работал и выдавал ошибку ... Почему ... хз я в общем, после танцев с бубнами и потерей части своего времени, решил написать свой. Который по функционалу никак не отличается, да и короче выглядит:

    Код:
    #Угадай число
    import random
    print('Привет! Как тебя зовут?')
    myName=input()
    print('Что ж, ',myName,', я загадываю число от 1 до 20.')
    print('Попробуй угадай, у тебя всего лишь 6 попыток')
    x=random.randint(1,20)
    for y in range(6):
        chislo=int(input('Попробой угадай. Введи своё число: '))
        if chislo>x:
            print('Твоё число слишком большое')
        if chislo<x:
            print('Твоё число слишком маленькое')
        if chislo==x:
            print('Отлично, ',myName,'! Ты справился за ',y+1,'попытки')
            break
    if chislo !=x:
        print('Увы. Ты не справился !, загаданное число было: ',x)

    Чуток дополнил до полного понимания, которого не было у автора, к примеру на указание, что попыток всего 6. В принципе ничего сложного, импорт модуля random(загадывает случайное число в определённом диапазоне), print - выводит сообщение, input - вводишь имя. Сразу стоит преобразование в int (целое число), а потом только логика. Если использовал все попытки, выводится финальное сообщение, если справился, финальное сообщение выводится, то, которое в перечислении (for)
    kmiha
    kmiha
    Постоялец
    Постоялец


    Сообщения : 186
    Репутация : 1
    Дата регистрации : 2019-11-21

    Python 3- попытка научиться программингу Empty Re: Python 3- попытка научиться программингу

    Сообщение автор kmiha Пт 29 Ноя 2019 - 6:10

    Очередная шутливая игра из книжки. На этот раз всё нормально прошло, и код работает.
    Код:
    print('Что получится, если скрестить снеговика с вампиром?')
    input()
    print('Обморожение!')
    print('Что дантисты называют \'чёрной дырой\'?')
    input()
    print('Кариес!')
    print()
    print('Тук-тук')
    input()
    print('Невежливая корова')
    input()
    print('Невежливая корова?', end='')
    print('-Мууу')
    kmiha
    kmiha
    Постоялец
    Постоялец


    Сообщения : 186
    Репутация : 1
    Дата регистрации : 2019-11-21

    Python 3- попытка научиться программингу Empty Re: Python 3- попытка научиться программингу

    Сообщение автор kmiha Пт 29 Ноя 2019 - 6:13

    по сути прошли то, что и так знали
    print - вывод на экран
    input() - приглашение что нибудь написать
    в print end='' указывает, что продолжение строки будет на этой же строчке. 
    \ - это экранирующий символ, следующий символ за ним программа не видит.
    Очень лёгки урок.
    kmiha
    kmiha
    Постоялец
    Постоялец


    Сообщения : 186
    Репутация : 1
    Дата регистрации : 2019-11-21

    Python 3- попытка научиться программингу Empty Re: Python 3- попытка научиться программингу

    Сообщение автор kmiha Пт 29 Ноя 2019 - 6:20

    Дополнение к вышеописанному
    Символ \ это не экранирующий символ, он работает совместно со следующим символом, к примеру
    \' - экранирует кавычку
    \t - табуляция
    \n - символ новой строки
    \"  экранирует кавычку
    kmiha
    kmiha
    Постоялец
    Постоялец


    Сообщения : 186
    Репутация : 1
    Дата регистрации : 2019-11-21

    Python 3- попытка научиться программингу Empty Re: Python 3- попытка научиться программингу

    Сообщение автор kmiha Пн 23 Дек 2019 - 11:11

    Главное уточнение для Python.

    При использовании текстового редактора Python, сохраняющего файлы в кодировке отличной
    от utf - 8 , в начале программы следует вставить директиву: (если хотите использовать русский текст)

    Код:
    # -*- coding: cp866 -*-

    либо:

    Код:
    # -*- coding: cp1251 -*-

      Текущее время Вт 14 Май 2024 - 23:59