摘要:年,第一個編譯器誕生。它是用語言實現的,并能夠調用語言的庫文件。榮登年年度最佳編程語言,很多大公司,包括都大量的使用。
Python的作者是著名的“龜叔”Guido van Rossum,1989年,龜叔為了打發無聊的圣誕節,開始編寫Python語言。1991年,第一個Python編譯器誕生。它是用C語言實現的,并能夠調用C語言的庫文件。
榮登2018年TIOBE年度最佳編程語言,很多大公司,包括google、Yahoo都大量的使用Python。
Python的發音與拼寫
Python的意思是蟒蛇,是取自英國20世紀70年代首播的電視喜劇《蒙提.派森干的飛行馬戲團》(Monty Python’s Flying Circus)
Python的作者是Guido van Rossum(龜叔)
Python是龜叔在1989年圣誕節期間,為了打發無聊的圣誕節而用C編寫的一個編程語言
Python第一個公開發行版發行于1991年
Python目前有兩個主要版本,Python2和Python3,最新版分別為2.7.12和3.7.2
Life is short, you need Python. 人生苦短,我用Python。
1)官 網:https://www.python.org/ 2)中文社區:http://www.pythontab.com/
面向對象的解釋型語言
簡單易學
豐富的庫
強制使用制表符作為語句縮進(white space)
1989年由荷蘭人Guido van Rossum于1989年發明,第一個公開發行版發行于1991年
Python 1.0 - January 1994 增加了 lambda, map, filter and reduce.Python 2.0 - October 16, 2000,加入了內存回收機制,構成了現在Python語言框架的基礎Python 2.4 - November 30, 2004, 同年目前最流行的WEB框架Django 誕生Python 2.5 - September 19, 2006Python 2.6 - October 1, 2008Python 2.7 - July 3, 2010Python 3.0 - December 3, 2008Python 3.1 - June 27, 2009Python 3.2 - February 20, 2011Python 3.3 - September 29, 2012Python 3.4 - March 16, 2014Python 3.5 - September 13, 2015
人工智能: 典型庫NumPy, SciPy, Matplotlib, TensorFlow
云計算: 云計算最火的語言, 典型應用OpenStack
WEB開發: 眾多優秀的WEB框架,眾多大型網站均為Python開發,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django,Flask
系統運維: 運維人員必備語言
金融:量化交易,金融分析,在金融工程領域,Python不但在用,且用的最多,而且重要性逐年提高。
圖形GUI: PyQT, WxPython,TkInter
谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬蟲、Google廣告等項目都在大量使用Python開發
CIA: 美國中情局網站就是用Python開發的
NASA: 美國航天局(NASA)大量使用Python進行數據分析和運算
YouTube:世界上最大的視頻網站YouTube就是用Python開發的
Dropbox:美國最大的在線云存儲網站,全部用Python實現,每天網站處理10億個文件的上傳和下載
Instagram:美國最大的圖片分享社交網站,每天超過3千萬張照片被分享,全部用python開發
Facebook:大量的基礎庫均通過Python實現的
Redhat: 世界上最流行的Linux發行版本中的yum包管理工具就是用python開發的
豆瓣: 公司幾乎所有的業務均是通過Python開發的
知乎: 國內最大的問答社區,通過Python開發(國外Quora)
除上面之外,還有搜狐、金山、騰訊、盛大、網易、百度、阿里、淘寶 、土豆、新浪、果殼等公司都在使用Python完成各種各樣的任務。
因為 Python 是跨平臺的,它可以運行在 Windows、Mac 和各種 Linux/Unix 系統上。目前,Python 有兩個版本,一個是 2.x 版,一個是 3.x版,這兩個版本是不兼容的。安裝的是 3.6.1 版本的。
官網地址:https://www.python.org/
是 windows 系統,下載完后,直接安裝,不過這里記得勾上Add Python 3.6 to PATH,然后點 “Install Now” 即可完成安裝。
Python安裝.png
安裝完成后,打開命令提示符窗口,敲入 python 后,出現下面的情況,證明 Python 安裝成功了。你看到提示符 >>> 就表示我們已經在 Python交互式環境中了,可以輸入任何 Python 代碼,回車后會立刻得到執行結果。
運行python.png
https://docs.python.org/zh-cn/3/
我們使用Pycharm 下載地址:http://www.jetbrains.com/pycharm
打開PyCharm,單擊“file”,然后選中“New Project…"
選擇項目要保存的位置,選擇python.exe,點擊create
3、彈出的窗口里點擊ok,項目就創建好了
1、右擊項目,點擊New ,再點擊Python File
2、輸入要創建的python文件的名稱,點擊ok
1、輸入代碼 print(“Hello world!”)
image
2、右擊空白處,選擇Run ‘PrintHello’
運行成功,控制臺打印出了“Hello world!”
在 Python 中,每個變量 在使用前都必須賦值,變量 賦值以后 該變量 才會被創建
等號(=)用來給變量賦值
= 左邊是一個變量名
= 右邊是存儲在變量中的值
變量名 = 值
# 定義變量---學生學號studentNo = "9527"# 定義變量---學生密碼stuentPassword = "123"# 在程序中,如果要輸出變量的內容,需要使用 print 函數print(studentNo)print(stuentPassword)說明#是代碼注釋,快捷鍵是Ctrl+/
Python的代碼縮進
Python語言通過縮進來組織代碼塊,這是Python的強制要求。 下面的代碼有誤:
# 定義變量---學生學號 studentNo = "9527"# 定義變量---學生密碼stuentPassword = "123"# 在程序中,如果要輸出變量的內容,需要使用 print 函數print(studentNo)print(stuentPassword)
這樣也不行
# 定義變量---學生學號studentNo = "9527"# 定義變量---學生密碼stuentPassword = "123"# 在程序中,如果要輸出變量的內容,需要使用 print 函數 print(studentNo)print(stuentPassword)
和其他編程語言不同,Python代碼對格式要求非常嚴格。代碼寫的里出外進,無法通過編譯。后面我們在分支,循環,函數,類等知識點時還會多次看到這種情況。
需求
柿子的價格是 8.5 元/斤
買了 7.5 斤 柿子
計算付款金額
# 定義柿子價格變量price = 8.5# 定義購買重量weight = 7.5# 計算金額money = price * weightprint(money)
變量的四要素:
變量的名稱
變量保存的數據
變量存儲數據的類型
變量的內存地址(標識)
需求
定義變量保存小強的個人信息
姓名:小強
年齡:22 歲
性別:是男生
身高:1.80 米
體重:77.0 公斤
利用 單步調試 確認變量中保存數據的類型
提問
在演練中,一共有幾種數據類型?
4 種
str —— 字符串
bool —— 布爾(真假)
int —— 整數
float —— 浮點數(小數)
在 Python 中定義變量時需要指定類型嗎?
不需要
Python 可以根據 = 等號右側的值,自動推導出變量中存儲數據的類型
在 Python 中定義變量是 不需要指定類型(在其他很多高級語言中都需要)
數據類型可以分為 數字型 和 非數字型
數字型
整型 (int)
浮點型(float)
布爾型(bool)
真 True 非 0 數 —— 非零即真
假 False 0
非數字型
字符串
列表
元組
字典
使用 type 函數可以查看一個變量的類型
type(name)
1) 數字型變量 之間可以直接計算
在 Python 中,兩個數字型變量是可以直接進行 算數運算的
如果變量是 bool 型,在計算時
True 對應的數字是 1
False 對應的數字是 0
演練步驟
定義整數 i = 10
定義浮點數 f = 10.5
定義布爾型 b = True
在PyCharm中,使用上述三個變量相互進行算術運算
i = 10f = 10.5b = Trueprint(i+f+b)
21.5
發生了自動類型轉換,全部轉換成了浮點數。
2) 字符串變量 之間使用 + 拼接字符串
在 Python 中,字符串之間可以使用 + 拼接生成新的字符串
first_name = "三"last_name = "張"print(first_name + last_name)
3) 字符串變量 可以和 整數 使用 * 重復拼接相同的字符串
print("-" * 50)
輸出
"--------------------------------------------------"
4) 數字型變量 和 字符串 之間 不能進行其他計算
first_name = "zhang"x = 10print( x + first_name)---------------------------------------------------------------------------TypeError: unsupported operand type(s) for +: "int" and "str"類型錯誤:`+` 不支持的操作類型:`int` 和 `str`
解決辦法:使用str(x)將x的類型強制轉換成字符串類型
first_name = "zhang"x = 10print(str(x)+first_name)
所謂 輸入,就是 用代碼 獲取 用戶通過 鍵盤 輸入的信息
例如:去銀行取錢,在 ATM 上輸入密碼
在 Python 中,如果要獲取用戶在 鍵盤 上的輸入信息,需要使用到 input 函數
1) 關于函數
一個 提前準備好的功能(別人或者自己寫的代碼),可以直接使用,而 不用關心內部的細節
目前已經學習過的函數
2) input 函數實現鍵盤輸入
在 Python 中可以使用 input 函數從鍵盤等待用戶的輸入
用戶輸入的 任何內容 Python 都認為是一個 字符串
語法如下:
字符串變量 = input("提示信息:")
3) 其他類型轉換函數
4) 變量輸入演練 —— 超市買蘋果
需求
收銀員輸入 蘋果的價格,單位:元/斤
收銀員輸入 用戶購買蘋果的重量,單位:斤
計算并且 輸出 付款金額
代碼
# 1. 輸入蘋果單價price_str = input("請輸入蘋果價格:")# 2. 要求蘋果重量weight_str = input("請輸入蘋果重量:")# 3. 計算金額# 1> 將蘋果單價轉換成小數price = float(price_str)# 2> 將蘋果重量轉換成小數weight = float(weight_str)# 3> 計算付款金額money = price * weightprint(money)
使用%
蘋果單價 9.00 元/斤,購買了 5.00 斤,需要支付 45.00 元
在 Python 中可以使用 print 函數將信息輸出到控制臺
如果希望輸出文字信息的同時,一起輸出 數據,就需要使用到 格式化操作符
% 被稱為 格式化操作符,專門用于處理字符串中的格式
包含 % 的字符串,被稱為 格式化字符串
% 和不同的 字符 連用,不同類型的數據 需要使用 不同的格式化字符
語法格式如下:
print("格式化字符串" % 變量1)print("格式化字符串" % (變量1, 變量2...))
舉個栗子
需求
定義字符串變量 name,輸出 我的名字叫 小明,請多多關照!定義整數變量 student_no,輸出 我的學號是 000001定義小數 price、weight、money,輸出 蘋果單價 9.00 元/斤,購買了 5.00 斤,需要支付 45.00 元定義一個小數 scale,輸出 數據比例是 10.00%
print("我的名字叫 %s,請多多關照!" % name)print("我的學號是 %06d" % student_no)print("蘋果單價 %.02f 元/斤,購買 %.02f 斤,需要支付 %.02f 元" % (price, weight, money))print("數據比例是 %.02f%%" % (scale * 100))
使用format
用法:
它通過{}和:來代替傳統%方式
字符串format()方法的基本使用格式是:
<模板字符串>.format(<逗號分隔的參數>)
其中,模板字符串是一個由字符串和槽組成的字符串,用來控制字符串和變量的顯示效果。槽用大括號({})表示,對應format()方法中逗號分隔的參數。
str = "{}曰:學而時習之,不亦說乎。".format("孔子")print(str)
"孔子曰:學而時習之,不亦說乎。"
如果模板字符串有多個槽,且槽內沒有指定序號,則按照槽出現的順序分別對應.format()方法中的不同參數。
"{}曰:學而時習之,不亦{}。".format("孔子","說乎")
"孔子曰:學而時習之,不亦說乎。"
可以通過format()參數的序號在模板字符串槽中指定參數的使用,參數從0開始編號
"{1}曰:學而時習之,不亦{0}。".format("說乎","孔子")
"孔子曰:學而時習之,不亦說乎。"
f-字符串
f-string是 Python 3.6 中定義的一種參數化字符串的方式,主要是讓格式化字符串更加便捷。 在 f-string 中,不要再使用 %-格式化 或者 format 函數中的復雜寫法,可以直接在字符串中寫入變量名。f-string 用 {} 標識變量,區別在于 {} 不再是用來占位的,而是直接寫入變量名。 修改上面的格式化例子:
name = input("請輸入姓名:")fondness = input("請輸入愛好:")print(f"{name} 的愛好是 {fondness}!") # 字符串前面的 f 大小寫均可
課上實踐 —— 個人名片
需求
在控制臺依次提示用戶輸入:姓名、公司、職位、電話、郵箱
按照以下格式輸出:
**************************************************公司名稱姓名 (職位)電話:電話郵箱:郵箱**************************************************
"""在控制臺依次提示用戶輸入:姓名、公司、職位、電話、電子郵箱"""name = input("請輸入姓名:")company = input("請輸入公司:")title = input("請輸入職位:")phone = input("請輸入電話:")email = input("請輸入郵箱:")print("*" * 50)print(company)print()print("%s (%s)" % (name, title))print()print("電話:%s" % phone)print("郵箱:%s" % email)print("*" * 50)
課后作業 使用f-string方法實現上述需求。
標識符就是程序員自己命名的 變量名。 名字 需要有 見名知義 的效果,不要隨意起名。
不好的變量命名
c1 = "小朱學長"n = 1500
好的變量命名
company = "小朱學長"employeeNum = 1500
標示符可以由 字母、下劃線 和 數字 組成
不能以數字開頭
不能與關鍵字重名
關鍵字 就是在 Python 內部已經使用的標識符
關鍵字 具有特殊的功能和含義
開發者 不允許定義和關鍵字相同的名字的標示符
通過以下命令可以查看 Python 中的關鍵字
import keywordprint(keyword.kwlist)
["False", "None", "True", "and", "as", "assert", "break", "class", "continue", "def", "del", "elif", "else", "except", "finally", "for", "from", "global", "if", "import", "in", "is", "lambda", "nonlocal", "not", "or", "pass", "raise", "return", "try", "while", "with", "yield"]
關鍵字的學習及使用,會在后面的課程中介紹
import 關鍵字 可以導入一個 “工具包”
在 Python 中不同的工具包,提供有不同的工具
命名規則 可以被視為一種 慣例,并無絕對與強制 目的是為了 增加代碼的識別和可讀性
注意 Python 中的 標識符 是 區分大小寫的
userName = "zhangsan"print(username)
Traceback (most recent call last): File "C:/Users/Administrator/PycharmProjects/hellopython/test.py", line 2, in <module> print(username)NameError: name "username" is not defined
在定義變量時,為了保證代碼格式,= 的左右應該各保留一個空格
在 Python 中,如果 變量名 需要由 二個 或 多個單詞 組成時,可以按照以下方式命名
每個單詞都使用小寫字母
單詞與單詞之間使用 _下劃線 連接
例如:first_name、last_name、qq_number、qq_password
當 變量名 是由二個或多個單詞組成時,還可以利用駝峰命名法來命名
小駝峰式命名法
第一個單詞以小寫字母開始,后續單詞的首字母大寫
例如:firstName、lastName
大駝峰式命名法
每一個單詞的首字母都采用大寫字母
例如:FirstName、LastName、CamelCase
是完成基本的算術運算使用的符號,用來處理四則運算
>>> a=10>>> b=5>>> print(a+b)15>>> print(a-b)5>>> print(a*b)50>>> print(a/b)2.0>>> print(a**b)100000>>> print(a//b)2>>> print(a%b)0
>>> a=10>>> b=20>>> a==bFalse>>> a!=bTrue>>> a>bFalse>>> a>> a>=bFalse>>> a<=bTrue
>>> a=True>>> b=False>>> a and bFalse>>> a or bTrue>>> not aFalse>>> not -1False>>> not 0True
在 Python 中,使用 = 可以給變量賦值
在算術運算時,為了簡化代碼的編寫,Python 還提供了一系列的 與 算術運算符 對應的 賦值運算符
注意:賦值運算符中間不能使用空格
>>> a=10>>> b=20>>> c=0>>> c=a+b>>> print(c)30>>> c+=10>>> print(c)40>>> c-=a>>> print(c)30>>> c*=a>>> print(c)300>>> c/=a>>> print(c)30.0>>> c%=a>>> print(c)0.0>>> c=a**5>>> print(c)100000>>> c//=b>>> print(c)5000>>> print(b)20
以下表格的算數優先級由高到最低順序排列
Python 條件語句跟其他語言基本一致的,都是通過一條或多條語句的執行結果( True 或者 False )來決定執行的代碼塊。
Python 程序語言指定任何非 0 和非空(None)值為 True,0 或者 None為 False。
Python 中,if 語句的基本形式如下:
if 判斷條件: 執行語句……else: 執行語句……
前面也提到過,Python 語言有著嚴格的縮進要求,因此這里也需要注意縮進,也不要少寫了冒號 : 。
if 語句的判斷條件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)來表示其關系。
例如:
# -*-coding:utf-8-*-results=59if results>=60: print ("及格")else : print ("不及格")
輸出的結果為:
不及格
上面也說道,非零數值、非空字符串、非空 list 等,判斷為True,否則為False。因此也可以這樣寫:
num = 6if num : print("Hello Python")
有些時候,我們的判斷語句不可能只有兩個,有些時候需要多個,比如上面的例子中大于 60 的為及格,那我們還要判斷大于 90 的為優秀,在 80 到 90 之間的良好呢?
這時候需要用到 if 語句多個判斷條件,
用偽代碼來表示:
if 判斷條件1: 執行語句1……elif 判斷條件2: 執行語句2……elif 判斷條件3: 執行語句3……else: 執行語句4……
實例:
# -*-coding:utf-8-*-results = 89if results > 90: print("優秀")elif results > 80: print("良好")elif results > 60: print ("及格")else : print ("不及格")
輸出的結果:
良好
Python 不像 Java 有 switch 語句,所以多個條件判斷,只能用 elif 來實現,但是有時候需要多個條件需同時判斷時,可以使用 or (或),表示兩個條件有一個成立時判斷條件成功;使用 and (與)時,表示只有兩個條件同時成立的情況下,判斷條件才成功。
# -*-coding:utf-8-*-java = 86python = 68if java > 80 and python > 80: print("優秀")else : print("不優秀")
輸出結果:
不優秀
注意:if 有多個條件時可使用括號來區分判斷的先后順序,括號中的判斷優先執行,此外 and 和 or 的優先級低于 >(大于)、<(小于)等判斷符號,即大于和小于在沒有括號的情況下會比與或要優先判斷。
java = 86python = 68if (80 <= java < 90) or (80 <= python < 90): print("良好")
輸出結果:
良好
課上練習1
我想買車,買什么車決定于我在銀行有多少存款如果我的存款超過500萬,我就買路虎否則,如果我的存款超過100萬,我就買寶馬否則, 如果我的存款超過50萬,我就買邁騰否則, 如果我的存款超過10萬,我就買福特否則, 如果我的存款10萬以下 ,我買比亞迪
課上練習2
輸入小明的考試成績,顯示所獲獎勵成績==100分,爸爸給他買輛車成績>=90分,媽媽給他買MP490分>成績>=60分,媽媽給他買本參考書成績<60分,什么都不買
一般編程語言都有循環語句,循環語句允許我們執行一個語句或語句組多次。
循環語句的一般形式如下:
Python 提供了 for 循環和 while 循環,當然還有一些控制循環的語句:
count = 1sum = 0while count <= 100: sum = sum + count count = count + 1print(sum)
輸出的結果:
5050
當然 while 語句時還有另外兩個重要的命令 continue,break 來跳過循
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/124792.html
摘要:大家好,我是冰河有句話叫做投資啥都不如投資自己的回報率高。馬上就十一國慶假期了,給小伙伴們分享下,從小白程序員到大廠高級技術專家我看過哪些技術類書籍。 大家好,我是...
文章目錄 強烈推薦系列教程,建議學起來??! 一.pycharm下載安裝二.python下載安裝三.pycharm上配置python四.配置鏡像源讓你下載嗖嗖的快4.1pycharm內部配置 4.2手動添加鏡像源4.3永久配置鏡像源 五.插件安裝(比如漢化?)5.1自動補碼神器第一款5.2漢化pycharm5.3其它插件 六.美女背景七.自定義腳本開頭八、這個前言一定要看九、pyt...
摘要:于是乎,冰河寫了一個腳本完美去除了桌面圖標煩人的小箭頭。今天,給大家分享一個如何完美去除桌面快捷圖標小箭頭的技巧,希望能夠給大家帶來幫助。這種方法不會導致任何問題可放心使用,冰河已經親自測試過了。 ...
摘要:因為是全中文的,對一些英語不好的人來說確實是福利。二下載安裝下載官網下載地址進去之后,點擊點擊后就會自動下載了。 文章目錄 推薦系列教程,推薦的一定是精選的!一....
摘要:個高級多線程面試題及回答后端掘金在任何面試當中多線程和并發方面的問題都是必不可少的一部分。目前在生產環基于的技術問答網站系統實現后端掘金這一篇博客將詳細介紹一個基于的問答網站的實現,有詳細的代碼。 15 個高級 Java 多線程面試題及回答 - 后端 - 掘金在任何Java面試當中多線程和并發方面的問題都是必不可少的一部分。如果你想獲得任何股票投資銀行的前臺資訊職位,那么你應該準備很多...
閱讀 1446·2021-11-24 09:39
閱讀 3626·2021-09-29 09:47
閱讀 1570·2021-09-29 09:34
閱讀 3066·2021-09-10 10:51
閱讀 2535·2019-08-30 15:54
閱讀 3215·2019-08-30 15:54
閱讀 868·2019-08-30 11:07
閱讀 1003·2019-08-29 18:36