Друзья, если вам нужно перепечатать, пожалуйста, указывайте источник:blog.CSDN.net/Генерал сказал, о...
Отказ от ответственности: во время обучения технологии искусственного интеллекта многие студенты задавали мне некоторые вопросы, связанные с Python, поэтому, чтобы дать студентам более обширные знания и лучшее понимание технологии искусственного интеллекта, я попросил своего помощника поделиться этой серией. учебников по python Надеюсь, поможет всем! Поскольку этот учебник по Python написан не мной, он не такой забавный и юмористический, как мое обучение технологии ИИ, и его более скучно изучать; но его знания все еще на месте, и его также стоит прочитать! PS: Для студентов, которые не понимают эту статью, пожалуйста, сначала прочитайте предыдущую статью, и вам не составит труда учиться понемногу каждый день шаг за шагом!
В дополнение к общим математическим операциям (сложение, вычитание и т. д.) Python также поддерживает большинство математических выражений на языке C. Сюда входят операции, обрабатывающие целые числа как строки битов. Например, перемещение и булевы операции могут быть реализованы:
>>> x = 1 # 0001
>>> x << 2 # Shift left 2 bits: 0100
4
>>> x | 2 # Bitwise OR: 0011
3
>>> x & 1 # Bitwise AND: 0001
1
В первом выражении двоичная единица в десятичной системе равна 0001, а после сдвига ее на две позиции влево она становится 0100 в двоичной системе, что соответствует 4 в десятичной системе. Последние две операции — это двоичное ИЛИ (0001|0010 = 0011) и двоичное И (0001&0001 = 0001). Python также поддерживает встроенные функции и встроенные модули для обработки чисел. Например, встроенные функции pow и abs вычисляют мощности и абсолютные значения соответственно. Вот несколько примеров.
>>> import math
>>> math.pi,math.e # Common constants
(3.1415926535897931,2.7182818284590451)
>>> math.sin(2 * math.pi / 180) # Sine,tangent,cosine
0.034899496702500969
>>> math.sqrt(144),math.sqrt(2) # Square root
(12.0,1.4142135623730951)
>>> pow(2,4),2 ** 4 # Exponentiation (power)
(16,16)
>>> abs(-42.0),sum((1,2,3,4)) # Absolute value,summation
(42.0,10)
>>> min(3,1,2,4),max(3,1,2,4) # Minimum,maximum
(1,4)
В python существуют различные способы удаления десятичных разрядов из числа с плавающей запятой. Мы представили методы усечения и пола ранее, мы также можем использовать раунд:
>>> math.floor(2.567),math.floor(-2.567) # Floor (next-lower integer)
(2,-3)
>>> math.trunc(2.567),math.trunc(-2.567) # Truncate (drop decimal digits)
(2,-2)
>>> int(2.567),int(-2.567) # Truncate (integer conversion)
(2,-2)
>>> round(2.567),round(2.467),round(2.567,2) # Round (Python 3.0 version)
(3,2,2.5699999999999998)
>>> '%.1f' % 2.567,'{0:.2f}'.format(2.567) # Round for display
('2.6','2.57')
Последние две строки отличаются: округление округляет число с плавающей запятой, но по-прежнему создает число с плавающей запятой в памяти, в то время как форматирование строки создает строку и не получает измененное число:
>>> (1 / 3),round(1 / 3,2),('%.2f' % (1 / 3))
(0.33333333333333331,0.33000000000000002,'0.33')
В Python есть 3 способа вычисления квадратного корня: с помощью функции модуля, выражения или встроенной функции:
>>> import math
>>> math.sqrt(144) # Module
12.0
>>> 144 ** .5 # Expression
12.0
>>> pow(144,.5) # Built-in
12.0
>>> math.sqrt(1234567890) # Larger numbers
35136.418286444619
>>> 1234567890 ** .5
35136.418286444619
>>> pow(1234567890,.5)
35136.418286444619
Обратите внимание, что модули, такие как математические, должны быть импортированы первыми, но встроенные функции, такие как abs, можно использовать напрямую без импорта. Другими словами, модули являются внешними компонентами, а встроенные функции находятся в неявном пространстве имен. Теперь, когда вы слышите «модуль», думайте об «импорте».
Его также необходимо импортировать при использовании модуля random из стандартной библиотеки. Этот модуль предоставляет инструменты для выбора любого числа с плавающей запятой от 0 до 1, выбора любого целого числа между двумя числами, выбора любого элемента в последовательности и т. д .:
>>> import random
>>> random.random()
0.44694718823781876
>>> random.random()
0.28970426439292829
>>> random.randint(1,10)
5
>>> random.randint(1,10)
4
>>> random.choice(['Life of Brian','Holy Grail','Meaning of Life'])
'Life of Brian'
>>> random.choice(['Life of Brian','Holy Grail','Meaning of Life'])
'Holy Grail'
Модуль Random очень практичен.Модуль Random необходим для раздачи карт в игре, случайного выбора картинок в демонстрационном графическом интерфейсе и выполнения статистических симуляций.