Введение
После нашего предыдущего исследования за последние несколько дней мы должны были освоить соответствующие базовые операции с контентом в Python.
Итак, сегодня мы официально приступили к изучению знаний, связанных с программированием на Python.
Сегодняшний контент будет чуть больше, около 2800+ слов, и на чтение уйдет 15 минут.
2. Переменные
2.1 Что такое переменная?
Так называемая переменная на самом деле может пониматься как использование «чашки с водой» для наливания различных напитков, поэтому независимо от того, какой напиток мы наливаем, наша чашка для воды никогда не меняется.
Фактически, в компьютере это похоже на переменную — «чашку», используемую для хранения различного содержимого.
2.2 Объявление переменных
Хотя в Python много типов, мы очень просто объявляем переменные.
Просто поместите содержимое, которое необходимо присвоить, сразу после имени (в качестве связи используется знак равенства).
# num 就是我们变量的名字,
# 我们可以读作将数字常量 10 赋值给变量 num
num = 10
2.3 Имена переменных
Мы только что использовали нашу переменную, но имя переменной может быть только num?
Конечно, нет, пока мы соблюдаем наши правила именования, мы можем объявлять контент по своему желанию.
Итак, каковы правила именования в Python?
2.3.1 Включенный контент
Именование переменных в Python может включать следующее:
- номер
- письмо
- подчеркивать
Некоторые учащиеся, возможно, сказали, что знак доллара ($) не сообщал об ошибке, когда я его использовал. Почему здесь сказано, что его нельзя включать?
На самом деле эта проблема в основном возникает в разных операционных системах, в Windows или Mac нет ничего необычного в использовании $.
Но если вы работаете в системе Linux, использование $ вызовет исключение.
Поэтому, когда мы его используем, мы должны избегать использования $, как и в C++.
2.3.2 Значение имени
Чтобы улучшить читаемость нашего кода, мы должны сделать так, чтобы имя переменной отражало значение переменной.
- Улучшить читаемость
- время: время
- start_time: время начала
- истина или ложь (логическое значение)
- Удалять ли: is_delete
- Отключить ли: is_enabled
2.3.3 Кэмелкейс
Если нам нужно использовать несколько слов для образования вместе в процессе именования, нам нужно использоватьCamelCase.
- нижний верблюжий регистр: первое слово начинается со строчной буквы, второе слово начинается с прописной буквы
- Например: мое имя, собака
- верхний верблюжий регистр: первая буква каждого слова заглавная
- Например: Имя, Фамилия
2.3.4 Венгерская номенклатура
Венгерская нотация — это почти заброшенный способ именования, который означаетПоместите аббревиатуру типа переменной в начало имени переменной.
# int -> n
# long -> l
# char -> ch
n_studentNumber = 12
# students、teachers ,他们指向的内容都是Person对象的list
pl_students #p代表的是person、l代表的是list
Этот подход был полезен до того, как IDE стали популярными, но по мере того, как инструменты разработки становились все более мощными, от этого подхода постепенно отказывались.
Но способ, которым этот метод работает для нас, таков:Используйте символы подчеркивания для соответствия именам переменных.
tomorrow_weather
student_name
MR_LP
2.3.5 Избегайте дублирования ключевых слов
Некоторые идентификаторы в Python имеют специальные функции, которые называются ключевыми словами.
Эти ключевые слова уже используются в python, поэтому разработчикам не разрешается определять идентификаторы с теми же именами, что и ключевые слова.
>>> print("我是 MR_LP,欢迎关注公众号 MR_LIXP")
>>> import keyword
>>> keyword.kwlist
После ввода списка ключевых слов вы можете получить следующие ключевые слова, которые были использованы.
and as assert break class continue def del
elif else except exec finally for from global
if in import is lambda not or pass
print raise return try while with yield
2.3.6 Имена переменных чувствительны к регистру
В Python имена в верхнем и нижнем регистре — это полностью две переменные.
2.3.7 Имя переменной не должно быть слишком длинным
Например:i_want_play_the_playstartion4
Видно, что это имя переменной эквивалентно имени функции, и когда оно будет вызываться в коде, оно также вызовет большие недоразумения.
Хорошее имя переменной должно состоять из двух-трех слов.
3. Ввод
3.1 Использование input()
В прошлом уроке мы говорили, что вывод можно отобразить с помощью print, чтобы отобразить то, что нам нужно отобразить.
Но что нам делать, когда нам нужно прочитать наш контент?
мы можем использоватьinput( )
функция.
password = raw_input("请输入密码:")
print '您刚刚输入的密码是:', password
Эффект операции следующий:
требует внимания:
- То, что помещено в круглые скобки input(), является информацией о подсказке, которая используется, чтобы дать пользователю простую подсказку перед получением данных.
- После того, как input() получит данные с клавиатуры, они будут сохранены в переменной справа от знака равенства
- input() будет обрабатывать любое значение, введенное пользователем, как строку
3.2 input(): ввод различных значений
Мы только что сказали, что input() обрабатывает любое значение, введенное пользователем, как строку.
Затем мы вводим другой контент,input( )
Что случится?
3.3 input() и raw_input()
Эти два метода на самом деле являются продуктом исторических изменений.
- python 2 : raw_input( )
- python 3 : input( )
Следует отметить, что нет очевидных изменений в использовании этих двух, которые можно понимать как один и тот же «вид».
4. Типы переменных и преобразование переменных
4.1 Использование методов для определения типа переменной
Внимательные читатели могли заметить, что чуть выше я использовал такую штуку.
>>> a = input()
123
>>> a
123
>>> type(a)
<type 'int'>
вtype( )
, — это метод, который мы часто используем для определения конкретного типа переменной.
Также обратите внимание, что в PythonПока переменная определена и у нее есть данные, ее тип определен, и нам не нужно, чтобы наши разработчики активно объясняли ее тип, система автоматически идентифицирует ее..
4.2 Типы переменных в Python
См. рисунок ниже для наших общих типов переменных.
4.3 Преобразование между переменными
Если нам нужно использовать разные типы контента для работы во время операции, мы также задействуем преобразование между нашими переменными.
Например:
a = '100' # 此时a的类型是一个字符串,里面存放了100这3个字符
b = int(a) # 此时b的类型是整型,里面存放的是数字100
print("a=%d"%b)
Ниже приведены методы, которые мы обычно используем при преобразовании между переменными.
функция | инструкция |
---|---|
int(x [,base ]) | преобразовать х в целое число |
long(x [,base ]) | преобразовать x в длинное целое |
float(x ) | преобразовать x в число с плавающей запятой |
complex(real [,imag ]) | создать множественное число |
str(x ) | преобразовать объект x в строку |
repr(x ) | преобразовать объект x в строку выражения |
eval(str ) | Оценивает допустимое выражение Python в строке и возвращает объект |
tuple(s ) | преобразовать последовательность s в кортеж |
list(s ) | преобразовать последовательность s в список |
chr(x ) | Преобразование целого числа в символ |
unichr(x ) | Преобразование целого числа в символ Unicode |
ord(x ) | преобразует символ в его целочисленное значение |
hex(x ) | Преобразование целого числа в шестнадцатеричную строку |
oct(x ) | Преобразование целого числа в восьмеричную строку |
5. Операторы в Python
Прежде всего, какие арифметические операторы используются в Python?
5.1 Арифметические операторы
оператор | описывать | пример |
---|---|---|
+ | добавлять | Добавление двух объектов a + b выводит результат 30 |
- | уменьшать | получить отрицательное число или вычесть одно число из другого a - b вывести результат -10 |
* | брать | Умножьте два числа или верните строку a * b, повторенную несколько раз Выведите результат 200 |
/ | Удалить | x разделить на y b / a выводит результат 2 |
// | Разделять | Возвращает целую часть частного 9//2 выводит 4 , 9.0//2.0 выводит 4.0 |
% | остаток | Возвращает остаток от деления b % a выводит 0 |
** | сила | Вернуть x в степень y a**b равно 10 в 20-й степени, а выходной результат равен 10000000000000000000000. |
Например:
>>> 9/2.0
4.5
>>> 9//2.0
4.0
5.2 Оператор присваивания
оператор | описывать | пример |
---|---|---|
= | оператор присваивания | Присвойте результат справа от знака = переменной слева num=1+2*3 Значение результата num равно 7 |
Также возьмите пример:
>>> a, b = 1, 2
>>> a
1
>>> b
2
5.3 Составные операторы
На самом деле, составной оператор — это обновленная версия нашего базового оператора, но это обновление представляет собой только обновление стиля написания, и оно не повышает эффективность работы.
i = i + 1 # i在自身的基础上增加1,并重新赋值给 i ,实现了经过这句代码后 i 变成了2的效果
i += 1 # i在自身的基础上增加1,并重新赋值给 i,同样实现了经过这句代码后 i 变成了2的效果
Наши общие составные операторы следующие:
оператор | описывать | пример |
---|---|---|
+= | оператор присваивания сложения | c += a 等效于 c = c + a |
-= | Оператор присваивания вычитания | c -= a 等效于 c = c - a |
*= | оператор присваивания умножения | c *= a 等效于 c = c * a |
/= | оператор присваивания деления | c /= a 等效于 c = c / a |
%= | Оператор присваивания по модулю | c %= a 等效于 c = c % a |
**= | оператор присваивания возведения в степень | c **= a 等效于 c = c ** a |
//= | Оператор присваивания целочисленного деления | c //= a 等效于 c = c // a |
5.4 Ошибка i++ в Python
Я считаю, что если читатель ранее изучал другие языки, ему легко использовать «аккумулятор» прямо в коде написания.
>>> i = 10
>>> i++
File "<stdin>", line 1
i++
^
SyntaxError: invalid syntax
Но мы обнаружим, что когда перейдем к использованиюi++
, после этого наша программа сообщила об ошибке напрямую.
По конкретным причинам см. код проверки 1 и код проверки 2 ниже.
# 测试代码 1
>>> a = 5
>>> b = 5
>>> id(a)
140618689958600
>>> id(b)
140618689958600
и
# 测试代码 2
>>> a = 1
>>> b = 2
>>> id(a)
140618689958696
>>> id(b)
140618689958672
>>> a+=1
>>> id(a)
140618689958672
>>> id(b)
140618689958672
Внимательные читатели, должно быть, уже заметили, что когда мы объявляем переменную a и переменную b, их пространство содержимого на самом деле одно и то же?
Переменные в python не определяют типы переменных заранее, как c, открывают указанное пространство в памяти, а затем начинают присваивать значения.
В Python в качестве примера возьмем строку: разделите пространство в памяти, чтобы сохранить строку заранее, а затем используйте имя переменной, чтобы указать на строку, подобно указателю.
Когда переменные a и b указывают на одно и то же пространство памяти, как мы можем использовать операцию «автоматическое увеличение/уменьшение»? .
Читатели должны обратить внимание,i++ не поддерживается в Python.