??????????歡迎來到我的博客??????????
??作者:秋無之地??簡介:CSDN爬蟲、后端、大數(shù)據(jù)領域創(chuàng)作者。目前從事python爬蟲、后端和大數(shù)據(jù)等相關工作,主要擅長領域有:爬蟲、后端、大數(shù)據(jù)開發(fā)、數(shù)據(jù)分析等。
??歡迎小伙伴們點贊????、收藏??、留言??、關注??,關注必回關
上一篇文章已經(jīng)跟大家介紹過《數(shù)據(jù)挖掘的學習路徑》,相信大家對數(shù)據(jù)挖掘都有一個基本的認識。下面我講一下數(shù)據(jù)分析中利器:Python基礎語法。
一、數(shù)據(jù)分析用Python的原因
一提到Python,相信大家都比較熟悉了,就算不是IT行業(yè)的也略有耳聞。大家心中是不是有個問題,要學好數(shù)據(jù)分析,一定要掌握 Python 嗎?答案是肯定的。下面我從三個方面給大家分析原因:
1、用過都說好
在一份關于開發(fā)語言的調查中,使用過 Python 的開發(fā)者,80% 都會把 Python 作為自己的主要語言。Python 已經(jīng)成為發(fā)展最快的主流編程語言,從眾多開發(fā)語言中脫穎而出,深受開發(fā)者喜愛。
2、開發(fā)者多
在數(shù)據(jù)分析領域中,使用 Python 的開發(fā)者是最多的,遠超其他語言之和。
3、語言簡潔,第三方庫多
Python 語言簡潔,有大量的第三方庫,功能強大,能解決數(shù)據(jù)分析的大部分問題。
二、Python的安裝以及IDE的選擇
1、Python版本選擇
Python 主要有兩個版本: 2.7.x 和 3.x。兩個版本之間存在一些差異,但并不大,它們語法不一樣的地方不到 10%。那到底選擇2.7.x 好?還是?3.x好呢?
版本選擇的標準就是看你的項目是否會依賴于 Python2.7 的包,如果有依賴的就只能使用 Python2.7,否則你可以用 Python 3.x 開始全新的項目。
2、Python安裝
Python的安裝可以看我之前的一篇文章《老司機帶你快速實現(xiàn)Python下載與安裝》
3、Python IDE 選擇
1. PyCharm
這是一個跨平臺的 Python 開發(fā)工具,可以幫助用戶在使用 Python 時提升效率,比如:調試、語法高亮、代碼跳轉、自動完成、智能提示等。
2. Sublime Text
SublimeText 是個著名的編輯器,Sublime Text3 基本上可以 1 秒即啟動,反應速度很快。同時它對 Python 的支持也很到位,具有代碼高亮、語法提示、自動完成等功能。
3. Vim
Vim 是一個簡潔、高效的工具,速度很快,可以做任何事,從來不崩潰。不過 Vim 相比于 Sublime Text 上手有一定難度,配置起來有些麻煩。
4. Eclipse+PyDev
習慣使用 Java 的人一定對 Eclipse 這個 IDE 不陌生,那么使用 Eclipse+PyDev 插件會是一個很好的選擇,這樣熟悉 Eclipse 的開發(fā)者可以輕易上手。
三、Python基礎語法
環(huán)境配置好后,我們就來快速學習幾個 Python 必會的基礎語法。我假設你是 Python 零基礎,但已經(jīng)有一些其他編程語言的基礎。下面我們一一來看。
?1、輸入與輸出
name = raw_input("What's your name?")
sum = 100+100
print('hello,%s' %name)
print('sum = %d' %sum)
raw_input 是 Python2.7 的輸入函數(shù),在 Python3.x 里可以直接使用 input,賦值給變量 name,print 是輸出函數(shù),%name 代表變量的數(shù)值,因為是字符串類型,所以在前面用的 %s 作為代替。
后面的代碼講解都基于Python3.x
這是運行結果:
What's your name?cy
hello,cy
sum = 200
2、判斷語句:if … else …
if score>= 90:
print('Excellent')
else:
if score < 60:
print('Fail')
else:
print('Good Job')
if … else … 是經(jīng)典的判斷語句,需要注意的是在 if expression 后面有個冒號,同樣在 else 后面也存在冒號。?
3、循環(huán)語句:for … in
sum = 0
for number in range(11):
sum = sum + number
print(sum)
?運行結果:
55
for 循環(huán)是一種迭代循環(huán)機制,迭代即重復相同的邏輯操作。如果規(guī)定循環(huán)的次數(shù),我們可以使用 range 函數(shù),它在 for 循環(huán)中比較常用。range(11) 代表從 0 到 10,不包括 11,也相當于 range(0,11),range 里面還可以增加步長,比如 range(1,11,2) 代表的是[1,3,5,7,9]。
4、循環(huán)語句: while
sum = 0
number = 1
while number < 11:
sum = sum + number
number = number + 1
print(sum)
?運行結果:
55
?1 到 10 的求和也可以用 while 循環(huán)來寫,這里 while 控制了循環(huán)的次數(shù)。while 循環(huán)是條件循環(huán),在 while 循環(huán)中對于變量的計算方式更加靈活。因此 while 循環(huán)適合循環(huán)次數(shù)不確定的循環(huán),而 for 循環(huán)的條件相對確定,適合固定次數(shù)的循環(huán)。
5、數(shù)據(jù)類型:列表、元組、字典、集合
1)列表:[]
lists = ['a','b','c']
lists.append('d')
print(lists)
print(len(lists))
lists.insert(0,'mm')
lists.pop()
print(lists)
?運行結果:
['a', 'b', 'c', 'd']
4
['mm', 'a', 'b', 'c']
列表是 Python 中常用的數(shù)據(jù)結構,相當于數(shù)組,具有增刪改查的功能,我們可以使用 len() 函數(shù)獲得 lists 中元素的個數(shù);使用 append() 在尾部添加元素,使用 insert() 在列表中插入元素,使用 pop() 刪除尾部的元素。
2)元組:()
tuples = ('tupleA','tupleB')
print(tuples[0])
?運行結果:
tupleA
元組 tuple 和 list 非常類似,但是 tuple 一旦初始化就不能修改。因為不能修改所以沒有 append(), insert() 這樣的方法,可以像訪問數(shù)組一樣進行訪問,比如 tuples[0],但不能賦值。
3)字典:{}
# -*- coding: utf-8 -*
#定義一個dictionary
score = {'guanyu':95,'zhangfei':96}
#添加一個元素
score['zhaoyun'] = 98
print(score)
#刪除一個元素
score.pop('zhangfei')
#查看key是否存在
print('guanyu' in score)
#查看一個key對應的值
print(score.get('guanyu'))
print(score.get('yase',99))
?運行結果:
{'guanyu': 95, 'zhaoyun': 98, 'zhangfei': 96}
True
95
99
字典其實就是{key, value},多次對同一個 key 放入 value,后面的值會把前面的值沖掉,同樣字典也有增刪改查。增加字典的元素相當于賦值,比如 score[‘zhaoyun’] = 98,刪除一個元素使用 pop,查詢使用 get,如果查詢的值不存在,我們也可以給一個默認值,比如 score.get(‘yase’,99)。
4)集合:{}
s = set(['a', 'b', 'c'])
s.add('d')
s.remove('b')
print(s)
print('c' in s)
?運行結果:
set(['a', 'c', 'd'])
True
集合 set 和字典 dictory 類似,不過它只是 key 的集合,不存儲 value。同樣可以增刪查,增加使用 add,刪除使用 remove,查詢看某個元素是否在這個集合里,使用 in。
6、注釋:#
注釋在 python 中使用 #,如果注釋中有中文,一般會在代碼前添加 # -- coding: utf-8 -。如果是多行注釋,使用三個單引號,或者三個雙引號,比如:
# -*- coding: utf-8 -*
'''
這是多行注釋,用三個單引號
這是多行注釋,用三個單引號
這是多行注釋,用三個單引號
'''
7、引用模塊 / 包:import
Python 語言中 import 的使用很簡單,直接使用 import module_name 語句導入即可。這里 import 的本質是什么呢?import 的本質是路徑搜索。import 引用可以是模塊 module,或者包 package。
針對 module,實際上是引用一個.py 文件。而針對 package,可以采用 from … import …的方式,這里實際上是從一個目錄中引用模塊,這時目錄結構中必須帶有一個 __init__.py 文件。
# 導入一個模塊
import model_name
# 導入多個模塊
import module_name1,module_name2
# 導入包中指定模塊
from package_name import moudule_name
# 導入包中所有模塊
from package_name import *
8、函數(shù):def
函數(shù)代碼塊以 def 關鍵詞開頭,后接函數(shù)標識符名稱和圓括號,在圓括號里是傳進來的參數(shù),然后通過 return 進行函數(shù)結果得反饋。
def addone(score):
return score + 1
print(addone(99))
運行結果:
100
四、練習題:A+B Problem
題目:A+B
輸入格式:有一系列的整數(shù)對 A 和 B,以空格分開。輸出格式:對于每個整數(shù)對 A 和 B,需要給出 A 和 B 的和。
輸入輸出樣例:
INPUT
1 5
OUTPUT
6
答案:
while True:
try:
#輸入數(shù)據(jù)
line = input()
#將數(shù)據(jù)按空格分隔
a = line.split()
#分隔后的數(shù)據(jù)相加,再打印
print(int(a[0]) + int(a[1]))
except:
break
五、總結
下圖是Python快速入門的一個流程圖,也是對本文內容的一個總結。
文章來源:http://www.zghlxwxcb.cn/news/detail-697809.html
版權聲明
本文章版權歸作者所有,未經(jīng)作者允許禁止任何轉載、采集,作者保留一切追究的權利。文章來源地址http://www.zghlxwxcb.cn/news/detail-697809.html
到了這里,關于Python基礎語法:數(shù)據(jù)分析利器的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!