Python基礎——模組

20170405發表於2020-08-08

      1.模組的匯入

  三種方式:

  第一種:import 模組名

  第二種:import 模組名 as 新名字

  第三種:from 模組名 import 函式名

  import math #第一種方式

  import numpy as np #第二種方式

  import matplotlib as mpl #第二種方式

  #import matplotlib.pyplot as plt

  from matplotlib import pyplot as plt #第三種方式

  # import seaborn

  def calc_e_small(x):

  n = 10

  f = np.arange(1, n+1).cumprod()

  b = np.array([x]*n).cumprod()

  return np.sum(b / f) + 1

  def calc_e(x):

  reverse = False

  if x < 0: # 處理負數

  x = -x

  reverse = True

  ln2 = 0.69314718055994530941723212145818

  c = x / ln2

  a = int(c+0.5)

  b = x - a*ln2

  y = (2 ** a) * calc_e_small(b)

  if reverse:

  return 1/y

  return y

  if __name__ == "__main__":

  t1 = np.linspace(-2, 0, 10, endpoint=False)

  t2 = np.linspace(0, 4, 20)

  t = np.concatenate((t1, t2))

  print(t) # 橫軸資料

  y = np.empty_like(t)

  for i, x in enumerate(t):

  y[i] = calc_e(x)

  print('e^', x, ' = ', y[i], '(近似值)\t', math.exp(x), '(真實值)')

  plt.figure(facecolor='w')

  mpl.rcParams['font.sans-serif'] = ['SimHei']

  mpl.rcParams['axes.unicode_minus'] = False

  plt.plot(t, y, 'r-', t, y, 'go', linewidth=2, markeredgecolor='k')

  plt.title('Taylor展式的應用 - 指數函式', fontsize=18)

  plt.xlabel('X', fontsize=15)    

  plt.ylabel('exp(X)', fontsize=15)

  plt.grid(True, ls=':')

  plt.show()

  2.if name == “main” 語句

  Python 屬於指令碼語言,不像編譯型語言那樣先將程式編譯成二進位制再執行,而是動態的逐行解釋執行。也就是從指令碼第一行開始執行,沒有統一的入口。

  當一個 Python檔案中有這一句的時候,就好比C語言中的主函式main,程式的起始就從這裡開始。而這個語句是防止當前檔案下有匯入的檔案中一些語句被Python的逐行機制所執行。

  因為如果一個 .py 檔案(模組)被直接執行時,其__name__值為__main__,即模組名為__main__。

  所以,if name == 'main’的意思是:當 .py 檔案被直接執行時,if name == 'main’之下的程式碼塊將被執行;當 .py 檔案以模組形式被匯入時,if name == 'main’之下的程式碼塊不被執行。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69979119/viewspace-2710190/,如需轉載,請註明出處,否則將追究法律責任。

相關文章