python猴子吃桃子的问题_Python基础知识初入门
想成為數據分析、機器學習、人工智能等領域的稀缺人才,就必須學會使用其相對應的編程語言,Python作為其主要的編程語言之一,在人工智能、大數據等領域有很大的需求和應用。以下是編程語言Python的基礎知識的簡單總結和介紹,希望對于同樣是零基礎學習編程語言Python的各位有所幫助。
Anaconda(包管理器和環境管理器)和Jupyter notebook(可以將數據分析的代碼、圖像和文檔全部組織到一個web文檔中)作為數據分析的標準環境,可以方便Python代碼的編寫和運行。按照下面兩個鏈接可以方便你在電腦上安裝好這兩個環境:
初學 Python 者自學 Anaconda 的正確姿勢是什么??www.zhihu.comjupyter notebook 可以做哪些事情??www.zhihu.com一、注釋
注釋方法1: #
#中國首富馬云 nameStr='馬云' print(nameStr) 馬云注釋方法2: ''' '''
''' 中國首富馬云 你咋這么有錢呢? ''' nameStr='馬云' print(nameStr) 馬云二、數據類型
Python有5種數據類型:字符串、數字、容器、布爾、空值(None)
字符串
#數據類型:字符串(string) nameStr='馬云' moneyStr2='有錢' print('用+將字符串合并:',nameStr+moneyStr2)用+將字符串合并: 馬云有錢#字符串的截取 var1='Hello World!' var2='Runoob' print("var1[0]:",var1[0]) print("var2[1:5]:",var2[1:5])var1[0]: H var2[1:5]: unooa="Hello" b="Python" print("a+b輸出結果:",a+b) print("a*2輸出結果:",a*2) print("a[1]輸出結果:",a[1])a+b輸出結果: HelloPython a*2輸出結果: HelloHello a[1]輸出結果: e#%s格式化字符串 str1='我叫%s,俺爹是%s'%('王思聰','王健林') print(str1) 我叫王思聰,俺爹是王健林數字 (Number)
Python3支持int,float,bool,complex (復數)
#數據類型:數值(Number) #1)整型:馬云年齡50歲 age=50 #2)浮點型:我用馬云的余額寶今天賺了3.53元 money=3.53 print(age)50print(money)3.53#內置的type函數可以用來查詢變量所指的對象類型 a,b,c,d=20,5.5,True,4+3j print(type(a),type(b),type(c),type(d))<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>容器可以存放多個數據
1 列表 List
2 元組 Tuple
3 集合 Sets
4 字典 Dictionary
列表
#定義列表:病人姓名 nameList=['猴子','馬云','王健林','馬化騰'] print(nameList)['猴子', '馬云', '王健林', '馬化騰']#列表長度 nameLen=len(nameList) print('列表長度:病人數目:',nameLen)列表長度:病人數目: 4列表的4個操作:增加、刪除、查詢、修改
#定義列表:病人姓名 nameList=['猴子','馬云','王健林','馬化騰'] #1)容器操作:增加 nameList.append('劉強東') print('增加1個元素:',nameList)增加1個元素: ['猴子', '馬云', '王健林', '馬化騰', '劉強東']#2)容器操作:刪除 del nameList[1] print('刪除第2個元素:',nameList)刪除第2個元素: ['猴子', '王健林', '馬化騰', '劉強東']#3)容器操作: 查詢:使用下標索引來訪問列表中的值,下標從0開始 name1=nameList[0] print('查詢列表的第1個元素:',name1)查詢列表的第1個元素: 猴子#4)容器操作:修改:直接指定下標的值 print('修改之前第1個元素是:',nameList[0]) nameList[0]='孫悟空' print('修改之后第1個元素是:',nameList[0])修改之前第1個元素是: 猴子 修改之后第1個元素是: 孫悟空元組
#定義元組 gafataTuple=('騰訊','阿里巴巴','蘋果','谷歌','Facebook','亞馬遜') #元組長度 gafataLen=len(gafataTuple) print('元組長度:',gafataLen) #查詢元組:第1個元素(下標從0開始) print('第1個元素的值:',gafataTuple[0])元組長度: 6 第1個元素的值: 騰訊集合
''' 容器:集合(sets)是一個沒有重復元素的容器 ''' #定義集合:6家公司的股票 gafataSets={'騰訊','阿里巴巴','蘋果','谷歌','Facebook','亞馬遜','亞馬遜'} print(gafataSets){'谷歌', '阿里巴巴', '騰訊', 'Facebook', '亞馬遜', '蘋果'}集合的4個操作:增加、刪除、查詢、修改
#1)容器操作:增加 #定義一個空的集合 stockSets=set() #使用update()增加元素 stockSets.update('騰訊','阿里巴巴','京東') print(stockSets) stockSets=set() stockSets.update(['騰訊','阿里巴巴','京東']) print(stockSets){'阿', '訊', '巴', '里', '東', '京', '騰'} {'阿里巴巴', '騰訊', '京東'}#2)容器操作:刪除 stockSets.discard('京東') print(stockSets){'阿里巴巴', '騰訊'}#3)容器操作:查找 txBool='騰訊' in stockSets print(txBool)True#4)容器操作:修改 #第1步:先刪除 stockSets.discard('京東') #第2步:再添加 stockSets.update(['京']) print(stockSets){'阿里巴巴', '騰訊', '京'}字典
''' 容器:字典(Dictionary) ''' #定義字典:病人編號和姓名的映射關系 patientDic={'001':'猴子','002':'馬云','003':'王健林','004':'馬化騰'} #定義字典:excel病人數據存儲 patientDic2={'001':['猴子',29,'1型糖尿病','較差'],'002':['馬云',34,'2型糖尿病','好轉'],'003':['王健林',28,'1型糖尿病','顯著好轉'],'004':['馬化騰',52,'2型糖尿病','好轉']} #1)容器操作:增加 patientDic2['005']=['王思聰',30,'1型糖尿病','好轉'] print(patientDic2){'001': ['猴子', 29, '1型糖尿病', '較差'], '002': ['馬云', 34, '2型糖尿病', '好轉'], '003': ['王健林', 28, '1型糖尿病', '顯著好轉'], '004': ['馬化騰', 52, '2型糖尿病', '好轉'], '005': ['王思聰', 30, '1型糖尿病', '好轉']}#2)容器操作:刪除 del patientDic2['005'] print(patientDic2){'001': ['猴子', 29, '1型糖尿病', '較差'], '002': ['馬云', 34, '2型糖尿病', '好轉'], '003': ['王健林', 28, '1型糖尿病', '顯著好轉'], '004': ['馬化騰', 52, '2型糖尿病', '好轉']}#3)容器操作:查詢,根據病人編號查詢病人信息 valueList1=patientDic2['001'] print(valueList1)['猴子', 29, '1型糖尿病', '較差']#4)容器操作:修改 print('修改之前,病人信息:',patientDic2['001']) patientDic2['001']=['猴子', 29, '1型糖尿病', '好轉'] print('修改之后,病人信息:',patientDic2['001'])修改之前,病人信息: ['猴子', 29, '1型糖尿病', '較差'] 修改之后,病人信息: ['猴子', 29, '1型糖尿病', '好轉']布爾→條件判斷
空值→讀入Python→None
三、條件判斷
# 《摔跤吧,爸爸》豆瓣評分 scoreNum=9.1 if scoreNum>=8:print('我要去看這部電影') else:print('電影太爛,不去看了')我要去看這部電影#定義列表,病人姓名 nameList=['猴子','馬云','王健林','馬化騰'] if '猴子' not in nameList:print('列表中沒有叫猴子的病人') else:print('列表中有個叫猴子的病人')列表中有個叫猴子的病人age=int(input('請輸入你家狗狗的年齡,按enter鍵獲取計算結果:')) if age < 0:print('狗狗年齡不能小于0') elif age==1:print('相當于14歲的人') elif age==2:print('相當于22歲的人') else:human=22+(age-2)*5print('對應人類年齡:',human)請輸入你家狗狗的年齡,按enter鍵獲取計算結果:5 對應人類年齡: 37四、循環 (批量處理數據)
#重復性工作 print('吃第1次飯') print('吃第2次飯') print('吃第3次飯')吃第1次飯 吃第2次飯 吃第3次飯#容器:1天中吃第幾次飯 eatList=['吃第1次飯','吃第2次飯','吃第3次飯'] #循環 for i in eatList: print(i)吃第1次飯 吃第2次飯 吃第3次飯''' 定義字典:6家公司(GAFATA)的股票 key是公司名稱,value是股票代碼 ''' gafataDict={'騰訊':'HK:00700','阿里巴巴':'baba','蘋果':'Apple','谷歌':':GOOGLE','Facebook':'fb','亞馬遜':'amzn'} #將股票代碼全部大寫 for key,value in gafataDict.items():#對股票代碼轉換成大寫newValue=value.upper()#將轉換后新的股票代碼賦值給對應的keygafataDict[key]=newValue print(gafataDict){'騰訊': 'HK:00700', '阿里巴巴': 'BABA', '蘋果': 'APPLE', '谷歌': ':GOOGLE', 'Facebook': 'FB', '亞馬遜': 'AMZN'}continue用于跳出當前循環
for key,value in gafataDict.items():if(key=='蘋果'):continueprint('當前公司:',key,',當前股票代碼:',value)當前公司: 騰訊 ,當前股票代碼: HK:00700 當前公司: 阿里巴巴 ,當前股票代碼: BABA 當前公司: 谷歌 ,當前股票代碼: :GOOGLE 當前公司: Facebook ,當前股票代碼: FB 當前公司: 亞馬遜 ,當前股票代碼: AMZNbreak用于退出整個循環
#查找蘋果公司的股票代碼 number=0 for key,value in gafataDict.items():number=number+1if(key=='蘋果'):print('查找',key,'公司的股票代碼是',value)breakprint('當前公司:',key,'當前股票代碼',value)當前公司: 騰訊 當前股票代碼 HK:00700 當前公司: 阿里巴巴 當前股票代碼 BABA 查找 蘋果 公司的股票代碼是 APPLE五、函數
自定義函數
''' 定義函數 函數功能:兩個數相加 輸入:x,y是要相加的兩個數 輸出:兩個數相加的和 ''' def add(x,y):z=x+yreturn z#使用函數 a=1 b=2 c=add(a,b) print('1和2相加等于',c)1和2相加等于 3#使用函數 a=1 b=2 c=add(x=a,y=b) print('1和2相加等于',c)1和2相加等于 3#定義函數:改變數據的值 def changeInt(a):a=a+1 ''' 使用函數 參數是不可變數據類型(字符串,元組,數值): 傳遞的只是該數據類型的值(相當于復制一份) ''' b=1 print('調用函數之前b的值=',b) changeInt(a=b) print('調用函數之后b的值=',b)調用函數之前b的值= 1 調用函數之后b的值= 1#定義函數:改變列表的值 def changeList(inputList):inputList.append('奶茶妹妹') ''' 使用函數 參數是可變數據類型: 傳遞的是該變量的引用地址 ''' nameList=['馬云','劉強東'] print('調用函數之前的值:',nameList) changeList(inputList=nameList) print('調用函數之后的值:',nameList)調用函數之前的值: ['馬云', '劉強東'] 調用函數之后的值: ['馬云', '劉強東', '奶茶妹妹']變量作用域
#變量作用域 def test():aStr='別理會他人閑言閑語,今日隨他們,讓他們說吧,你的機會將會到來,再來證明自己。' #在函數外面,訪問函數內的局部變量aStr print(aStr) --------------------------------------------------------------------------- NameError Traceback (most recent call last) <ipython-input-16-69d29bc999da> in <module>3 aStr='別理會他人閑言閑語,今日隨他們,讓他們說吧,你的機會將會到來,再來證明自己。'4 #在函數外面,訪問函數內的局部變量aStr ----> 5 print(aStr)NameError: name 'aStr' is not defined六、模塊
模塊是組織程序代碼的方式,不同功能的函數分門別類放入不同的模塊中,.py文件就是一個模塊,里面有函數和變量定義的文件。
Python內置模塊
''' Python內置模塊 ''' #第1步:引入模塊 import sys #第2步:使用模塊中的函數,屬性 pathList=sys.path print('Python 路徑為:n',pathList)Python 路徑為:['C:UsersAdministrator', 'C:ProgramDataAnaconda3envspy3python37.zip', 'C:ProgramDataAnaconda3envspy3DLLs', 'C:ProgramDataAnaconda3envspy3lib', 'C:ProgramDataAnaconda3envspy3', '', 'C:ProgramDataAnaconda3envspy3libsite-packages', 'C:ProgramDataAnaconda3envspy3libsite-packagesIPythonextensions', 'C:UsersAdministrator.ipython']使用第三方包
''' 使用第三方模塊:pandas pandas是數據分析工具 ''' #引入模塊 import pandas as pd #文件路徑(在本地運行時替換成你自己的實際數據路徑) fileNameStr=r'F:光盤資料數據分析病歷數據.xlsx' #導入excel文件 xl=pd.ExcelFile(fileNameStr) patientDf=xl.parse('Sheet1') print(patientDf)病人編號 姓名 年齡 糖尿病類型 病情 0 1 猴子 29 1型糖尿病 較差 1 2 馬云 34 2型糖尿病 好轉 2 3 王健林 28 1型糖尿病 顯著好轉 3 4 馬化騰 52 2型糖尿病 較差七、數據結構
數據結構隊列
from collections import deque #定義隊列:排隊吃飯人的編號 queue=deque(['001','002','003','004','005']) #入隊,在隊列尾部插入元素 queue.append('006') print(queue)deque(['001', '002', '003', '004', '005', '006'])#出隊:在隊列頭部刪除元素 queue.popleft()'001'print(queue)deque(['002', '003', '004', '005', '006'])#出隊:在隊列頭部刪除元素 queue.popleft()'002'print(queue)deque(['003', '004', '005', '006'])入隊出隊棧
from collections import deque #定義棧:瀏覽我個人知乎主頁的順序 stack=deque(['知乎動態','知乎回答','知乎文章']) #入棧:在棧頂加入元素 stack.appendleft('知乎專欄') print(stack)deque(['知乎專欄', '知乎動態', '知乎回答', '知乎文章'])stack.pop()'知乎文章'print(stack)deque(['知乎專欄', '知乎動態', '知乎回答'])stack.popleft()'知乎專欄'print(stack)deque(['知乎動態', '知乎回答'])棧隊列和棧的區別:隊列是先進先出,有出口和入口,先進去可以先出來。棧就像一個箱子,后放上去的,可以先出來。
排序字典
Python 默認的字典 (key無序)
#6家公司名稱及股票代碼 gafataDict={'騰訊':'HK:00700','阿里巴巴':'baba','蘋果':'Apple','谷歌':':GOOGLE','Facebook':'fb','亞馬遜':'amzn'} gafataDict{'騰訊': 'HK:00700','阿里巴巴': 'baba','蘋果': 'Apple','谷歌': ':GOOGLE','Facebook': 'fb','亞馬遜': 'amzn'}Collections 中排序字典 (key有序)
from collections import OrderedDict ''' OrderedDict:按照插入key的順序,對字典排序 ''' #定義有序字典 gafataDict=OrderedDict({'騰訊':'HK:00700','阿里巴巴':'baba','蘋果':'Apple','谷歌':':GOOGLE','Facebook':'fb','亞馬遜':'amzn'}) gafataDictOrderedDict([('騰訊', 'HK:00700'),('阿里巴巴', 'baba'),('蘋果', 'Apple'),('谷歌', ':GOOGLE'),('Facebook', 'fb'),('亞馬遜', 'amzn')])計數器 (具有統計功能)
from collections import Counter cDict=Counter('有一種鳥是永遠也關不住的,因為他們的羽毛太光亮了。羽毛太光亮了。') cDictCounter({'有': 1,'一': 1,'種': 1,'鳥': 1,'是': 1,'永': 1,'遠': 1,'也': 1,'關': 1,'不': 1,'住': 1,'的': 2,',': 1,'因': 1,'為': 1,'他': 1,'們': 1,'羽': 2,'毛': 2,'太': 2,'光': 2,'亮': 2,'了': 2,'。': 2})#出現次數最多的2個詞 cDict.most_common(2)[('的', 2), ('羽', 2)]如有不明白的地方,可以參考下面的鏈接進行學習的補充和拓展:
Python3 教程 | 菜鳥教程?www.runoob.com親,如果你認為本篇文章對你有用,請點贊哦,您的點贊亦是我前進的動力。
總結
以上是生活随笔為你收集整理的python猴子吃桃子的问题_Python基础知识初入门的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 华阳太阳能怎么样
- 下一篇: 人体痣相大全(男女全身痣相图解测命运)