Начало работы с нулевым фундаментом для изучения общих операторов Python (6)

Арифметический оператор

+ - * / (действительное деление)% (берем остаток) ** // (деление)
В Python вы можете написать: a = a + 3 эквивалентно a + = 3,
Вставьте описание изображения сюда
это также может быть так: a = b = c = d = 10
Деление Python3 стало реальным делением, то есть оно будет возвращать значение с плавающей запятой. // Выполняется деление пола
Вставьте описание изображения сюда
, то есть оно возвращает целое число, которое меньше частного
Вставьте описание изображения сюда
%: take остаток
Вставьте описание изображения сюда
** экспоненциальный оператор
Вставьте описание изображения сюда

Оператор сравнения

Возвращает значение логического типа согласно истинному или ложному выражению
<; <=;>;> =; ==;! =

Логический оператор

и : когда левая и правая стороны равны True, результат будет True; пока есть False с левой и правой стороны, результат будет False
или : только когда левая или правая стороны True, результат будет True ; только обе стороны одновременно. Если задано False, результатом будет False
not : унарный оператор, в зависимости от того, какое из них противоположно логическому значению, все
ненулевые числа будут True
Вставьте описание изображения сюда

Вставьте описание изображения сюда
В Python 3 <4 <5 эквивалентно (3 <4) и (4 <5)

Приоритетные вопросы

Когда в выражении одновременно используется несколько операторов, может возникнуть проблема с приоритетом. Умножение и деление, за которыми следуют сложение и вычитание. Операторы сравнения выше, чем логические операторы . При необходимости добавьте (), чтобы повысить читаемость кода .
Вставьте описание изображения сюда
** Оператор экспоненты имеет более высокий приоритет, чем унарный оператор с левой стороны, но более низкий приоритет, чем унарный оператор с правой стороны
Как показано ниже
Вставьте описание изображения сюда
Возведение в степень (**)> знак (+ -)> арифметический оператор (+ - * / //)> оператор сравнения (<; <=;>;> =; ==;! =>) Символ логической операции (не; и ; или)
не> и> или

Задача

  1. Разделение этажей Python теперь реализовано с помощью символа «//». Какой контент вы будете визуально отображать в версиях 3.0 // 2.0?
    1

  2. a <b <c на самом деле равно?
    (a <b) и (b <c)

  3. Можете ли вы легко сказать без IDLE значение 5 ** -2?

0,04
3. Как просто определить, четное или нечетное число?
Остаток оцените%

while 1:#保证程序可以运行n次
    number = input("请输入一个非0的数:")
    a = int(number)
    b = a % 2
    if b == 1:
        print("是奇数")
    else:
        print('是偶数')

Вставьте описание изображения сюда

  1. 请 用 最快 速度 说出 答案 : не 1 или 0 и 1 или 3 и 4 или 5 и 6 или 7 и 8 и 9
    ((не 1) или 0) и (1 или 3) и (4 или 5) и (6 или 7) и (8 или 9) = 0 и 1 и 4 и 6 и 8 = 0 (错 了)
    (не 1) или (0 и 1) или (3 и 4) или (5 и 6) или (7 и 8 и 9) = 0 или 0, или 4, или 6, или 9 = 4
    Логика короткого замыкания: 3 и 4 == 4, и 3 или 4 == 3
  2. Помните нашу домашнюю работу по поиску високосных годов в последнем классе? Если вы не изучили операцию «поиск остатка», все же помните, какой метод можно использовать для замены функции «%» на «запрос полноты»?
    Посмотрите, равно ли деление реальному делению if int (a / 400) == a / 400
    Используйте метод остатка:
year = input('请输入一个年份:')
while year.isdigit() == 1:
    a = int(year)
    b = a % 400
    c = a % 4
    d = a % 100 
    if b == 0:
        print('闰年')
    else:
        if c == 0 and d != 0:
            print('闰年')
        else:
            print("不是闰年")
    year = input('请输入一个年份:')
if year.isdigit() == 0:
    print('输入不合法') 
    year = input('要输入整数哦:')
    while year.isdigit() == 1:
        a = int(year)
        b = a % 400
        c = a % 4
        d = a % 100
        if b == 0:
            print('闰年')
        else:
            if c == 0 and d != 0:
                print('闰年')
            else:
                print("不是闰年")
        year = input('请输入一个年份:')

Вставьте описание изображения сюда
6. Напишите программу для печати всех нечетных чисел от 0 до 100.

print('0-100内的所有奇数:')
i = 0
while i <= 100:
    if i % 2 == 1:
        print(i)
        i = i + 1
    else:
        i += 1

Вставьте описание изображения сюда
7. Мы сказали, что текущий Python может вычислять очень большие данные, но ... настоящий расчет больших данных сейчас зависит от оборудования.Как насчет написания небольшого кода, который приведет к сбою вашего компьютера?
Вставьте описание изображения сюда
8. Сложная проблема
Эйнштейна. Эйнштейн однажды придумал такую ​​интересную математическую задачу: есть длинная лестница, если каждый шаг равен 2 шагам, остается 1 шаг; если каждый шаг равен 3 шагам, остается 2 шага; если каждый шаг идет до 5 шагов, и 4 шага остаются в конце; если каждый шаг составляет 6 шагов, 5 шагов остаются в конце; только каждый шаг составляет 7 шагов, и остается ровно один шаг.
(Теплое напоминание черепахе: если ступеньки слишком велики, яйца легко вытащить ~~~) Пожалуйста, запрограммируйте, чтобы найти хотя бы ступеньки у лестницы?

Код маленькой черепахи:

x = 7
i = 1
flag = 0

while i <= 100:
    if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5):
        flag = 1
    else:
        x = 7 * (i+1) # 根据题意,x一定是7的整数倍,所以每次乘以7
    i += 1

if flag == 1:
    print('阶梯数是:', x)
else:
    print('在程序限定的范围内找不到答案!')

рекомендация

отblog.csdn.net/qq_44520665/article/details/112594537