python版本,執行

来源:https://www.cnblogs.com/JcrLive/archive/2020/01/27/12235342.html

01. 第一個 程式 1.1 Python 源程式的基本概念 1. Python 源程式就是 一個特殊格式的文本文件 ,可以 使用任意文本編輯軟體 做 的開發 2. Python 程式的 文件擴展名 通常都是 1.2 演練步驟 在桌面下,新建 目錄 在 目錄下新建 文件 使用 gedit 編輯 並且 ...


01. 第一個 HelloPython 程式

1.1 Python 源程式的基本概念

  1. Python 源程式就是一個特殊格式的文本文件,可以使用任意文本編輯軟體Python 的開發
  2. Python 程式的 文件擴展名 通常都是 .py

1.2 演練步驟

  • 在桌面下,新建 認識Python 目錄
  • 認識Python 目錄下新建 01-HelloPython.py 文件
  • 使用 gedit 編輯 01-HelloPython.py 並且輸入以下內容:
print("hello python")
print("hello world")
  • 在終端中輸入以下命令執行 01-HelloPython.py
$ python 01-HelloPython.py

printpython 中我們學習的第一個 函數

print 函數的作用,可以把 "" 內部的內容,輸出到屏幕上

1.3 演練擴展 —— 認識錯誤(BUG)

關於錯誤

  • 編寫的程式不能正常執行,或者執行的結果不是我們期望的
  • 俗稱 BUG,是程式員在開發時非常常見的,初學者常見錯誤的原因包括:
    1. 手誤
    2. 對已經學習過的知識理解還存在不足
    3. 對語言還有需要學習和提升的內容
  • 在學習語言時,不僅要學會語言的語法,而且還要學會如何認識錯誤和解決錯誤的方法

每一個程式員都是在不斷地修改錯誤中成長的

第一個演練中的常見錯誤

  • 1> 手誤,例如使用 pirnt("Hello world")
NameError: name 'pirnt' is not defined

名稱錯誤:'pirnt' 名字沒有定義
  • 2> 將多條 print 寫在一行
SyntaxError: invalid syntax

語法錯誤:語法無效

每行代碼負責完成一個動作

  • 3> 縮進錯誤
IndentationError: unexpected indent

縮進錯誤:不期望出現的縮進
  • Python 是一個格式非常嚴格的程式設計語言
  • 目前而言,大家記住每行代碼前面都不要增加空格
  • 4> python 2.x 預設不支持中文

目前市場上有兩個 Python 的版本並存著,分別是 Python 2.xPython 3.x

  • Python 2.x 預設不支持中文,具體原因,等到介紹 字元編碼 時給大家講解
  • Python 2.x 的解釋器名稱是 python
  • Python 3.x 的解釋器名稱是 python3
SyntaxError: Non-ASCII character '\xe4' in file 01-HelloPython.py on line 3, 
but no encoding declared; 
see http://python.org/dev/peps/pep-0263/ for details

語法錯誤: 在 01-HelloPython.py 中第 3 行出現了非 ASCII 字元 '\xe4',但是沒有聲明文件編碼
請訪問 http://python.org/dev/peps/pep-0263/ 瞭解詳細信息
  • ASCII 字元只包含 256 個字元,不支持中文
  • 有關字元編碼的問題,後續會講

單詞列表

* error 錯誤
* name 名字
* defined 已經定義
* syntax 語法
* invalid 無效
* Indentation 索引
* unexpected 意外的,不期望的
* character 字元
* line 行
* encoding 編碼
* declared 聲明
* details 細節,詳細信息
* ASCII 一種字元編碼

02. Python 2.x3​​.x 版本簡介

目前市場上有兩個 Python 的版本並存著,分別是 Python 2.xPython 3.x

新的 Python 程式建議使用 Python 3.0 版本的語法

  • Python 2.x 是 過去的版本
    • 解釋器名稱是 python
  • Python 3.x 是 現在和未來 主流的版本
    • 解釋器名稱是 python3
    • 相對於 Python 的早期版本,這是一個 較大的升級
    • 為了不帶入過多的累贅,Python 3.0 在設計的時候 沒有考慮向下相容
      • 許多早期 Python 版本設計的程式都無法在 Python 3.0 上正常執行
    • Python 3.0 發佈於 2008 年
    • 到目前為止,Python 3.0 的穩定版本已經有很多年了
      • Python 3.3 發佈於 2012
      • Python 3.4 發佈於 2014
      • Python 3.5 發佈於 2015
      • Python 3.6 發佈於 2016
  • 為了照顧現有的程式,官方提供了一個過渡版本 —— Python 2.6
    • 基本使用了 Python 2.x 的語法和庫
    • 同時考慮了向 Python 3.0 的遷移,允許使用部分 Python 3.0 的語法與函數
    • 2010 年中推出的 Python 2.7 被確定為 最後一個Python 2.x 版本

提示:如果開發時,無法立即使用 Python 3.0(還有極少的第三方庫不支持 3.0 的語法),建議

  • 先使用 Python 3.0 版本進行開發
  • 然後使用 Python 2.6Python 2.7 來執行,並且做一些相容性的處理

03. 執行 Python 程式的三種方式

3.1. 解釋器 python / python3

Python 的解釋器

# 使用 python 2.x 解釋器
$ python xxx.py

# 使用 python 3.x 解釋器
$ python3 xxx.py
其他解釋器(知道)

Python 的解釋器 如今有多個語言的實現,包括:

  • CPython —— 官方版本的 C 語言實現
  • Jython —— 可以運行在 Java 平臺
  • IronPython —— 可以運行在 .NET 和 Mono 平臺
  • PyPy —— Python 實現的,支持 JIT 即時編譯

3.2. 互動式運行 Python 程式

  • 直接在終端中運行解釋器,而不輸入要執行的文件名
  • 在 Python 的 Shell 中直接輸入 Python 的代碼,會立即看到程式執行結果

1) 互動式運行 Python 的優缺點

優點
  • 適合於學習/驗證 Python 語法或者局部代碼
缺點
  • 代碼不能保存
  • 不適合運行太大的程式

2) 退出 官方的解釋器

1> 直接輸入 exit()
>>> exit()
2> 使用熱鍵退出

在 python 解釋器中,按熱鍵 ctrl + d 可以退出解釋器

001_積跬步以至千里

3) IPython

  • IPython 中 的 “I” 代表 交互 interactive
特點
  • IPython 是一個 python 的 互動式 shell,比預設的 python shell 好用得多
    • 支持自動補全
    • 自動縮進
    • 支持 bash shell 命令
    • 內置了許多很有用的功能和函數
  • IPython 是基於 BSD 開源的
版本
  • Python 2.x 使用的解釋器是 ipython
  • Python 3.x 使用的解釋器是 ipython3

  • 要退出解釋器可以有以下兩種方式:

1> 直接輸入 exit
In [1]: exit
2> 使用熱鍵退出

在 IPython 解釋器中,按熱鍵 ctrl + dIPython 會詢問是否退出解釋器

IPython 的安裝

$ sudo apt install ipython

3.3. Python 的 IDE —— PyCharm

1) 集成開發環境(IDE)

集成開發環境(IDE,Integrated Development Environment)—— 集成了開發軟體需要的所有工具,一般包括以下工具:

  • 圖形用戶界面
  • 代碼編輯器(支持 代碼補全自動縮進
  • 編譯器/解釋器
  • 調試器(斷點單步執行
  • ……

2)PyCharm 介紹

  • PyCharm 是 Python 的一款非常優秀的集成開發環境
  • PyCharm 除了具有一般 IDE 所必備功能外,還可以在 WindowsLinuxmacOS 下使用
  • PyCharm 適合開發大型項目
    • 一個項目通常會包含 很多源文件
    • 每個 源文件 的代碼行數是有限的,通常在幾百行之內
    • 每個 源文件 各司其職,共同完成複雜的業務功能

3)PyCharm 快速體驗

  • 文件導航區域 能夠 瀏覽定位打開 項目文件
  • 文件編輯區域 能夠 編輯 當前打開的文件
  • 控制台區域 能夠:
    • 輸出程式執行內容
    • 跟蹤調試代碼的執行
  • 右上角的 工具欄 能夠 執行(SHIFT + F10) / 調試(SHIFT + F9) 代碼

  • 通過控制臺上方的單步執行按鈕(F8),可以單步執行代碼


您的分享是我們最大的動力!

更多相關文章
  • 面向對象編程 —— Object Oriented Programming 簡寫 OOP 01. 面向對象基本概念 我們之前學習的編程方式就是 面向過程 的 面相過程 和 面相對象,是兩種不同的 編程方式 對比 面向過程 的特點,可以更好地瞭解什麼是 面向對象 1.1 過程和函數(科普) 過程 是早 ...
  • 函數進階 目標 函數參數和返回值的作用 函數的返回值 進階 函數的參數 進階 遞歸函數 01. 函數參數和返回值的作用 函數根據 有沒有參數 以及 有沒有返回值 ,可以 相互組合 ,一共有 4 種 組合形式 1. 無參數,無返回值 2. 無參數,有返回值 3. 有參數,無返回值 4. 有參數,有返回 ...
  • 01. 變數的引用 變數 和 數據 都是保存在 記憶體 中的 在 中 函數 的 參數傳遞 以及 返回值 都是靠 引用 傳遞的 1.1 引用的概念 在 中 變數 和 數據 是分開存儲的 數據 保存在記憶體中的一個位置 變數 中保存著數據在記憶體中的地址 變數 中 記錄數據的地址 ,就叫做 引用 使用 函數可 ...
  • 變數 流程式控制制 函數 模塊 系統需求 1. 程式啟動,顯示名片管理系統歡迎界面,並顯示功能菜單 2. 用戶用數字選擇不同的功能 3. 根據功能選擇,執行不同的功能 4. 用戶名片需要記錄用戶的 姓名 、 電話 、 QQ 、 郵件 5. 如果查詢到指定的名片,用戶可以選擇 修改 或者 刪除 名片 步驟 ...
  • Python 中數據類型可以分為 數字型 和 非數字型 數字型 整型 ( ) 浮點型( ) 布爾型( ) 真 `非 0 數` —— 非零即真 假 `0` 複數型 ( ) 主要用於科學計算,例如:平面場問題、波動問題、電感電容等問題 非數字型 字元串 列表 元組 字典 在 中,所有 非數字型變數 都支 ...
  • 01. 程式的三大流程 在程式開發中,一共有三種流程方式: 順序 —— 從上向下 ,順序執行代碼 分支 —— 根據條件判斷,決定執行代碼的 分支 迴圈 —— 讓 特定代碼 重覆 執行 02. 迴圈基本使用 迴圈的作用就是讓 指定的代碼 重覆的執行 迴圈最常用的應用場景就是 讓執行的代碼 按照 指定的 ...
  • 0.1 標識符和關鍵字 1.1 標識符 標示符就是程式員定義的 變數名 、 函數名 名字 需要有 見名知義 的效果,見下圖: 標示符可以由 字母 、 下劃線 和 數字 組成 不能以數字開頭 不能與關鍵字重名 思考:下麵的標示符哪些是正確的,哪些不正確為什麼? 1.2 關鍵字 關鍵字 就是在 內部已經 ...
  • PyCharm 的官方網站地址是:https://www.jetbrains.com/pycharm/ 01. 恢復 PyCharm 的初始設置 的 配置信息 是保存在 用戶家目錄下 的 目錄下的, 表示當前使用的 的版本號 如果要恢復 的初始設置,可以按照以下步驟進行: 1. 關閉正在運行的 2. ...
一周排行
  • 1. 泛型Generic 1.1 引入泛型:延遲聲明 泛型方法聲明時,並未寫死類型,在調用的時候再指定類型。 延遲聲明:推遲一切可以推遲的。 1.2 如何聲明和使用泛型 泛型方法:方法名稱後面加上尖括弧,裡面是類型參數 類型參數實際上就是一個類型T聲明,方法就可以用這個類型T了。 如下所示: pub ...
  • 本筆記摘抄自:https://www.cnblogs.com/PatrickLiu/p/7903617.html,記錄一下學習過程以備後續查用。 一、引言 今天我們要講行為型設計模式的第三個模式--迭代器模式,先從名字上來看。迭代是遍歷的意思,迭代器可以理解為是遍歷某某的工具,遍歷什麼呢?在軟 件設 ...
  • 本筆記摘抄自:https://www.cnblogs.com/PatrickLiu/p/7928521.html,記錄一下學習過程以備後續查用。 一、引言 今天我們要講行為型設計模式的第四個模式--觀察者模式,先從名字上來看。觀察者模式可以理解為既然有“觀察者”,那肯定就有“被觀察者”了。“觀察者” ...
  • 先看核心代碼: public List<DataEntity> SearchShopSalesReport(DateTimeOffset? dateFrom, DateTimeOffset? dateTo,string groupBy) { var query = data.DataEntity / ...
  • 首先新建一個項目,名稱叫Caliburn.Micro.ActionConvertions 然後刪掉MainWindow.xaml 然後去app.xaml刪掉StartupUri這行代碼 其次,安裝Caliburn.Micro,Caliburn.Micro.Core,這兩個Nuget包,如下圖 然後新 ...
  • 一文帶你瞭解 C DLR 的世界 在很久之前,我寫了一片文章 "dynamic結合匿名類型 匿名對象傳參" ,裡面我以為DLR內部是用反射實現的。因為那時候是心中想當然的認為只有反射能夠在運行時解析對象的成員信息並調用成員方法。後來也是因為其他的事一直都沒有回過頭來把這一節知識給補上,正所謂亡羊補牢 ...
  • ​ 在C#8.0中,針對介面引入了一項新特性,就是可以指定預設實現,方便對已有實現進行擴展,也對面向Android和Swift的Api進行互操作提供了可能性。下麵我們來看看該特性的具體規則與實現。 一、主要應用場景: 在不破壞影響已有實現的情況下,可以添加新成員。這解決了在第三方已經大量使用了的介面 ...
  • 前言 通常在應用程式開發到正式上線,在這個過程中我們會分為多個階段,通常會有 開發、測試、以及正式環境等。每個環境的參數配置我們會使用不同的參數,因此呢,在ASP.NET Core中就提供了相關的環境API,方便我們更好的去做這些事情。 環境 ASP.NET Core使用ASPNETCORE_ENV ...
  • 擱置了幾天,工作忙的一塌糊塗,今天終於抽空來繼續看看MVC的知識。先來看看MVC的路由是如何處理的。以下為替代的路由: app.UseEndpoints(endpoints => { endpoints.MapControllerRoute( name: "default", pattern: "{ ...
  • 多用www.bing.com國際版解決代碼報錯 代碼運行的時候,報異常,國內的搜索引擎一搜, 浮誇的廣告太多,解決方案准確性不足, 盜版又很嚴重(導致一錯皆錯),方案未及時更新等詬病。 www.bing.com國際版可以關聯到: (1). 外國官網,可以獲得官方的解決方案。 (2). stackov ...
x