Учебник по серии Python 63

искусственный интеллект

Друзья, если вам нужно перепечатать, пожалуйста, указывайте источник: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 необходим для раздачи карт в игре, случайного выбора картинок в демонстрационном графическом интерфейсе и выполнения статистических симуляций.