python開發環境功能介紹_第一模塊 第3章 Python介紹與環境配置

python入門(全為重點)

1. 編程語言介紹

編程語言分類、總結

2. python介紹

3. 解釋器多版本共存

4. 運行python程序的兩種方式

5. 一個python程序運行的三個步驟(******)

6. 注釋

7. IED集成開發環境

3.1 編程語言分類之低級語言

這里的高級/低級指的是離硬件較遠/較近

編程語言分類

1.機器語言

直接用二進制語言編寫程序

特點:

1.執行效率最高

2.開發效率最低

3.跨平臺性差

2.匯編語言

用英文標簽取代二進制語言,但是跟機器語言半斤八兩。

特點:

1.執行效率高

2.開發效率低

3.跨平臺性差

3.高級語言

高級指離硬件比較遠,用人類能理解的語言寫程序。

按照翻譯方式的不同,分為以下兩種:

編譯型(如C語言)

解釋型(如python)

3.2 編程語言分類之高級語言

編譯型(如C語言)

用高級語言編寫的程序使用編譯器(GCC)完整地翻譯成二進制指令。

特點:

1.執行效率高

2.開發效率低

3.跨平臺性差

4.其他

解釋型(如python)

用高級語言編寫的程序首先轉成中間格式(字節碼格式),然后交由解釋器解釋字節碼,解釋一行執行一行。

特點:

1.執行效率低

2.開發效率高

3.跨平臺性好

4.其他

混合型語言(如java)

總結

1. 執行效率:機器語言>匯編語言>高級語言(編譯型>解釋型)

2. 開發效率:機器語言<匯編語言<高級語言(編譯型<解釋型)

3. 跨平臺性:解釋型具有極強的跨平臺性

3.3 python介紹

龜叔先確定了python這門語言的風格,然后開始編寫python解釋器。python解釋器就是一款應用程序,龜叔當年用C語言開發了python解釋器,所以稱為cpython,后來有人用java寫解釋器,稱為jpython。

python的發展史主要是python解釋器的發展史,語法層面上變動不大。具體采用哪種語言風格,要看兼容什么版本的解釋器。

2008年出了python3,但是2010年出了python2.7,為了方便使用pyhton2解釋器的用戶使用。python2和python3存在一個分水嶺,語法上存在差異。有些公司中的有些程序使用的還是python2的,所以為了方便起見可以下載兩個版本的解釋器,一個是最新版的python2(如2.7),一個是最新版的python3(如3.8.2)。不過使用最新版本的會存在風險。

3.4 解釋器下載

python官網:

https://www.python.org/

2.7.17/3.8.2版

windows:

Mac OSX:

source code: linux

3.5 windows平臺安裝解釋器

先安裝,然后配置環境變量

2.7.17版安裝:

2054372-20200603114314453-568257093.png

指定安裝路徑:

2054372-20200603114405693-1775869203.png

注意:先默認(Add python.exe to Path)為x

2054372-20200603114605265-1330815707.png

2054372-20200603114848632-1979352799.png

2054372-20200603115406221-1185287322.png

其中這三個中的代碼完全一樣,pip.exe用于引入第三方軟件或工具。

3.8.1版安裝:

2054372-20200603115832341-297046665.png

2054372-20200603115945183-416227244.png

2054372-20200603120154748-2041073978.png

注意:不一定非得安裝到C盤下,可以安裝到其他盤。

配置環境變量:

操作系統會先在當前文件夾去找python.exe,如果找不到就去環境變量中提供的路徑下依次檢索。

配置環境變量的作用是方便操作系統查找到文件。

配置環境變量的方法:

我的電腦>>>屬性>>>高級系統設置>>>環境變量>>>

2054372-20200603130102328-1202621850.png

2054372-20200603130309737-208151187.png

添加好后一路按確定即可。

如果電腦上同時安裝了兩個或多個不同版本的python,為了方便調用可以復制一份python.exe,然后重命名,直接調用重命名后的即可:

2054372-20200603135426987-1588007927.png

配置后pip的環境變量后,使用黑窗口調用下,得到以下結果:

C:\WINDOWS\system32>pip -V

pip20.0.2 from c:\users\wangjian_tr\appdata\local\programs\python\python37\lib\site-packages\pip (python 3.7)

說明,通過pip 20.0.2下載的第三方模塊等都存放到以下路徑中:c:\users\wangjian_tr\appdata\local\programs\python\python37\lib\site-packages\pip (python 3.7)

注意:新下載安裝的python解釋器比較干凈,隨著使用會不斷安裝第三方模塊或軟件,這就會造成環境的污染,為了解決這一問題,出現了虛擬環境,下載的第三方軟件都寄生在虛擬環境中,并不影響python解釋器母體。每開發新軟件時使用新的虛擬環境,保證開始的環境是干凈的。pycharm中有創造虛擬環境的功能。

windows系統中默認不安裝python解釋器,但是有些系統中自帶python解釋器。如果系統自帶了,那么在使用的時候會往系統中安裝第三方軟件,那么為了不污染系統環境也要使用虛擬環境。

3.6 linux平臺安裝解釋器

3.7 mac平臺安裝解釋器

3.8 運行python程序的兩種方式

1.交互式

在黑窗口中執行

即時得到程序的運行結果,多用于調試,不能永久保存,起著輔助的作用。

C:\Users\wangjian_tr>python

Python3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64bit (AMD64)] on win32

Type"help", "copyright", "credits" or "license" formore information.>>> print('hello world')

hello world

2.腳本的方式

把程序寫到文件中(約定俗成文件名結尾為.py),然后用python解釋器解釋其中的內容。

2054372-20200603185012511-224160470.png

在黑窗口中執行:

C:\Users\wangjian_tr>python C:\Users\wangjian_tr\Desktop\腳本的方式.txt

hello world

將以上txt文件的后綴改為.py后,在黑窗口中執行:

C:\Users\wangjian_tr>python C:\Users\wangjian_tr\Desktop\腳本的方式.py

hello world

3.9 python程序運行的三個步驟(*****)

針對腳本的運行方式,主要經歷三個過程。

python python程序文件的路徑

執行python程序經歷三個步驟:

1.先啟動python解釋器,此時相當于啟動了一個文本編輯器

操作系統先在當前路徑下查找是否存在python解釋器,如果沒有就去系統環境變量中查找,找到后將其代碼加載到內存,交給CPU進行運行。

2.解釋器會發送系統調用,將xxx.py中的內容從硬盤讀入內存,此時xxx.py中的所有字符全部為普通字符,沒有任何語法意義。

解釋器向操作系統發送請求,讓操作系統將要解釋的文件從硬盤讀取到內存。這一步僅僅做了準備工作,內存中python解釋器準備好了,xxx.py文件準備好了。

3.解釋器開始解釋執行剛剛讀入內存的xxx.py的代碼,開始識別python語法。

對比文本編輯器讀取xxx.py的內容的步驟:

2054372-20200603191751445-1516276945.png

打開右側txt文本,將左側文件拖動到右側文本中,右側文本中會顯示左側文件中的內容。

1.先啟動文本編輯器

2.文本編輯器會發送系統調用,把xxx.py的內容從硬盤讀入內存

3.文本編輯器會將剛剛讀入內存的內容控制輸出到屏幕上,讓用戶看到結果。

總結:兩者在前兩個階段做的事情完全一致,唯一不同的是第三階段對讀入內存的python代碼的處理方式不同。

3.10 集成開發環境介紹

推薦使用的集成開發環境是pycharm

profession版

解釋器的更換:

2054372-20200603143935067-1129648605.png

最后點擊ok>>>apply>>>ok

3.11 虛擬環境介紹

虛擬環境是對安裝的python解釋器的拷貝,創建虛擬環境的方式如下:

2054372-20200603155404188-630601575.png

2054372-20200603160311262-576282701.png

3.12 注釋

作用:

1. 注釋是對代碼的解釋說明

2. 被注釋的代碼不會被執行

分類:

1.單行注釋:

1.寫在代碼上方

2.寫在代碼后方,注意#和代碼之間空兩個空格,#后空一格空格

注意:為關鍵代碼加注釋,沒必要為所有代碼加注釋。

2.多行注釋

三引號:三個單引號/三個雙引號

'''xxx'''或"""xxx"""

#這是單行注釋

print('hello') #這是單行注釋

'''

這是

多行

注釋

'''

"""

這是

多行

注釋

"""

# print('hi')

注意:如果代碼寫完后下方出現波浪線,說明代碼的寫法不符合規范。

重點問題:

1.機器語言、匯編語言、編譯型、解釋型語言在執行效率、開發效率、跨平臺方面的高低對比

2.python解釋器與python語言的關系

1.python解釋器是一款應用程序,專門用于解釋python這門語言的語法風格并執行。

2.python語言編寫的程序最終都是被解釋器執行的,所以我們可以這么說,python語言更多地都是在調用python解釋器的功能,所以解釋器性能的高低很大程度決定了我們用python寫出的程序執行效率的高低。

3.什么是環境變量path,或者說它是用來干什么的

4.運行python程序的兩種方式

交互式

在黑窗口中調用python,然后輸入命令,會立馬得到反饋結果,通常用于調試。

腳本的方式

將程序寫在文件中存起來,然后在黑窗口中寫pthon python程序的路徑

5.一個python程序運行的三個步驟/階段

總結它與文本解釋器讀取文件的三個階段的吸納共同之處與不同之處

6.注釋的種類、注釋的用途

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/374254.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/374254.shtml
英文地址,請注明出處:http://en.pswp.cn/news/374254.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

如何判斷微信內置瀏覽器(JS PHP)

進行微信公眾賬號開發的時候&#xff0c;其中很大一塊是微站點的開發&#xff0c;我們需要知道當前的瀏覽器是微信內置的瀏覽器&#xff0c;那么如何判斷呢&#xff1f; 微信內置瀏覽器的 User Agent Mozilla/5.0 (iPhone; CPU iPhone OS 6_1_3 like Mac OS X) AppleWebKit/536…

用WPF做關于MEF 簡單學習記錄

寫在前面&#xff1a;下面學習所得多是從自http://www.cnblogs.com/comsokey/p/MEF1.html和http://www.cnblogs.com/yunfeifei/p/3922668.html兩位大神的文章里學到的&#xff0c;特別鳴謝&#xff01;整理下是更大一方面是對自己知識的梳理&#xff0c;用詞用句不夠準確&#…

Log4j,Stat4j,SMTPAppender集成–匯總錯誤日志以發送太多電子郵件

我們的開發團隊希望在生產系統出現問題時盡快得到通知&#xff0c;這是一個每天為成千上萬的客戶提供服務的關鍵Java Web應用程序。 這個想法是讓它在出現太多錯誤時向我們發送電子郵件&#xff0c;這些錯誤通常表明數據庫&#xff0c;外部Web服務存在問題&#xff0c;或者應用…

C排序算法:(一)直接排序

最簡單的排序方法。 如果從大到小排序&#xff0c;那么從[0]元素開始&#xff0c;和后面的元素進行對比&#xff0c;如果后面元素大&#xff0c;則和[0]元素交換。 核心思想&#xff1a;選定基準元素&#xff0c;和其他元素對比。 #include <stdio.h>unsigned char buff…

數據庫抽象類PDOStatement對象使用

1.預處理語句中使用占位符,分為 索引方式 和 關聯方式 a.索引方式&#xff1a; $pdonew PDO($dns,$username,$password,$options); $sqlselect * from tests where username?,password?; $stmt$pdo->prepare($sql); $stmt->execute(array($username,$password)); b.關聯…

c語言 鏈表_C語言編程第22講——單向有序鏈表的C語言實現

1、單向有序鏈表的含義單向有序鏈表可以解析為四個名詞&#xff1a;表&#xff1a;一組元素&#xff1b;鏈表&#xff1a;表中的元素不是從前往后一個挨著一個&#xff0c;而是通過一個元素才能找到另一個元素&#xff1b;單向&#xff1a;表中的元素只能從前往后訪問&#xff…

Spring 3.1和Hibernate的持久層

1.概述 本文將展示如何使用Spring和Hibernate實現DAO 。 有關核心的Hibernate配置&#xff0c;請參閱有關帶??有Spring的Hibernate 3和Hibernate 4的文章。 2.沒有更多的春天模板 從Spring 3.0和Hibernate 3.0.1開始&#xff0c; 不再需要Spring HibernateTemplate來管理Hib…

C排序算法:(二)冒泡排序

冒泡排序就是從左至右比較相鄰的兩個數值大小&#xff0c;如果右側的數值較小&#xff0c;則交換兩個數值的位置&#xff0c;較大的數值就會像泡泡一樣一路向右漂浮。 #include <stdio.h>//small to big void Bubble_Sort(unsigned char *input_data, unsigned int inpu…

C語言之猜數游戲

#include<stdio.h>#include<stdlib.h>#include<time.h>int main(){ srand(time(0)); int count0,thought; int numrand()%1001; printf("%d\n",num); do { printf("請猜這個數在1-100之間\n"); scanf("%d",&thought); cou…

pythonturtle畫點的指令_簡述python的turtle繪畫命令及解釋

一 基礎認識 turtle庫是python的標準庫之一&#xff0c;它是一個直觀有趣的圖形繪制數據庫&#xff0c;turtle(海龜&#xff09;圖形繪制的概念誕生1969年。它的應用十分廣&#xff0c;而且使用簡單&#xff0c;只要在編寫python程序時寫上import turtle即可。 1.繪圖窗口設置命…

算法—振興中華(C語言版)

/* 標題: 振興中華小明參加了學校的趣味運動會&#xff0c;其中的一個項目是&#xff1a;跳格子。地上畫著一些格子&#xff0c;每個格子里寫一個字&#xff0c;如下所示&#xff1a;從我做起振我做起振興做起振興中起振興中華比賽時&#xff0c;先站在左上角的寫著“從”字的格…

OpenGL ES一些函數詳解(一)

glLoadIdentity和glMultMatrix glLoadIdentity的作用是將當前模型視圖矩陣轉換為單位矩陣&#xff08;行數和列數相同的矩陣&#xff0c;并且矩陣的左上角至右下角的連線上的元素都為1&#xff0c;其它元素都為0&#xff09;&#xff0c;這樣可以方便矩陣的乘法運算。 glMultMa…

忽略Java中的自簽名證書

我在職業生涯中遇到過幾次問題&#xff0c;就是我們有時希望允許自簽名證書用于開發或測試目的。 Google的快速搜索顯示了多年來無數Java開發人員遇到的麻煩。 根據確切的證書問題&#xff0c;您可能會收到類似以下內容之一的錯誤&#xff0c;盡管我幾乎肯定有其他表現形式&…

C排序算法:(三)插入排序

像打撲克牌一樣&#xff0c;每次摸一張牌&#xff0c;把牌插入正確位置。 #include <stdio.h>void Insert_Sort_Small_To_Big(unsigned char* input_data, unsigned int input_length) {int i 0, j 0;unsigned char temp 0;for (i 1; i < input_length; i){temp …

sqlserver中自定義函數+存儲過程實現批量刪除

由于項目的需要&#xff0c;很多模塊都要實現批量刪除的功能。為了方便模塊的調用&#xff0c;把批量刪除方法寫成自定義函數。直接上代碼。 自定義函數&#xff1a; ALTER FUNCTION [dbo].[func_SplitById] (str varchar(50),split varchar(10))--傳過來的id字符串 --分割的標…

c語言選擇排序_C語言——選擇排序

1 選擇排序&#xff08;5分&#xff09;題目內容&#xff1a;編寫選擇排序&#xff0c;要求排序過程調用函數實現&#xff0c;在主函數輸入n個數據&#xff0c;調用函數后&#xff0c;輸出排好序的元素輸入格式:輸入整型數n&#xff0c;并輸入n個整數&#xff0c;輸入數據用空格…

算法—巧排撲克牌(C語言)

/*小明剛上小學&#xff0c;學會了第一個撲克牌“魔術”&#xff0c;到處給人表演。魔術的內容是這樣的&#xff1a;他手里握著一疊撲克牌&#xff1a;A&#xff0c;2&#xff0c;....J&#xff0c;Q&#xff0c;K 一共13張。他先自己精心設計它們的順序&#xff0c;然后正面朝…

LeetCode Binary Tree Paths(簡單題)

題意&#xff1a;   給出一個二叉樹&#xff0c;輸出根到所有葉子節點的路徑。 思路&#xff1a; 直接DFS一次&#xff0c;只需要判斷是否到達了葉子&#xff0c;是就收集答案。 1 /**2 * Definition for a binary tree node.3 * struct TreeNode {4 * int val;5 * …

我的測試和代碼分析工具箱

上周&#xff0c;我們在LINEAS成立了一個“測試技能小組”&#xff0c;該小組用于交換有關測試的知識。 各種各樣的問題反復出現的一個問題是&#xff1a;有哪些工具可以測試和分析您的代碼&#xff1f; 因此&#xff0c;這是我對此的個人回答&#xff0c;按照我傾向于將其介紹…

新唐M0 KEIL環境搭建,找不到device不識別,關鍵:Nu-Link_Keil_Driver

公司用新唐的芯片&#xff0c;網上關于新唐的資料相對ST確實少得可憐&#xff0c;搭建環境也是搞了好久&#xff0c;去keil官網下載安裝了新唐的pack 打開官方參考工程還是提示找不到device&#xff0c;option里面也沒有識別出來。 百度了好久&#xff0c;嘗試了各種辦法&…