真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Python基礎(chǔ)-你必備的語(yǔ)言技能包-創(chuàng)新互聯(lián)

今天,我們正式開始數(shù)據(jù)分析課程的基礎(chǔ)篇,Python 基礎(chǔ)。

成都創(chuàng)新互聯(lián)公司是專業(yè)的襄州網(wǎng)站建設(shè)公司,襄州接單;提供成都網(wǎng)站制作、做網(wǎng)站,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行襄州網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!

為什么是 Python 呢,在相關(guān)的開發(fā)語(yǔ)言調(diào)查中,使用過 Python 的開發(fā)者,大多數(shù)人都會(huì)把 Python 作為自己的主要語(yǔ)言。在數(shù)據(jù)分析領(lǐng)域,使用 Python 語(yǔ)言更是最多的。Python 語(yǔ)言語(yǔ)法簡(jiǎn)潔,搭建方便,而且還擁有龐大健全的第三方庫(kù)供使用。比如科學(xué)計(jì)算工具庫(kù) Pandas 和 NumPy;深度學(xué)習(xí)工具 Keras 和 TensorFlow;以及機(jī)器學(xué)習(xí)工具庫(kù) Scikit-learn 等等。

總之,如果你想在數(shù)據(jù)分析、機(jī)器學(xué)習(xí)等領(lǐng)域做深入研究的話,那么熟練掌握 Python 語(yǔ)言就是最好的敲門磚。

搭建語(yǔ)言環(huán)境

我們首先來了解下如何安裝和搭建 Python 語(yǔ)言環(huán)境?

Python 版本的選擇

當(dāng)前流行的 Python 版本有兩個(gè),2.X 和 3.X,由于 2.X 即將不再維護(hù),所以我建議直接使用 3.X 版本作為你的主要版本。

IDE 的選擇

目前市面上流行著很多的 Python 編輯器,比如 Sublime,Notebook++ 等,不過我還是推薦如下兩個(gè)

PyCharm:這是一個(gè)跨平臺(tái)的 Python 開發(fā)工具,不但擁有常規(guī)的調(diào)試、語(yǔ)法高亮,智能提示等功能外,還自帶多個(gè)數(shù)據(jù)庫(kù)連接器,使你在調(diào)試數(shù)據(jù)庫(kù)的時(shí)候也能得心應(yīng)手,不再忙于到處下載各種數(shù)據(jù)庫(kù)客戶端。

Jupyter:這個(gè)是一個(gè) web 式的在線編輯器,每次運(yùn)行一行代碼,你都可以立即得到結(jié)果,非常方便,在代碼調(diào)試階段,用處無(wú)限。

Python 軟件的安裝

如果你是 Linux 或者 MacOS 操作系統(tǒng),那么一般會(huì)自帶 Python2.6 的版本。如果想要安裝 3.X 的版本,需要自行編譯安裝,如果沒有 Linux 操作基礎(chǔ)的話,建議還是使用 Windows,以后有機(jī)會(huì)了,再學(xué)習(xí) Linux 及相關(guān)操作。

如果是 Windows 操作系統(tǒng),可以直接到 Python 官網(wǎng)下載 .exe 安裝包,一路下一步即可完成安裝。

Python 基礎(chǔ)語(yǔ)法

Hello World

相信大家都有這種經(jīng)驗(yàn),學(xué)習(xí)任何一門語(yǔ)言時(shí),入門的都是輸出 Hello World,下面我們就來看看如何使用 Python 來輸出 Hello World

print("Hello World")
sum = 1 + 2
print("sum = %d" %sum)
>>>
Hello World
sum = 3

print 函數(shù),用來在控制臺(tái)打印輸出,sum = 語(yǔ)法是聲明變量并賦值,%d 是用來做字符串替換。

數(shù)據(jù)類型和變量

列表

list1 = ["1", "2", "test"]
print(list1)
list1.append("hello")
print(lists)
>>>
['1', '2', 'test']
['1', '2', 'test', 'hello']

list 是 Python 內(nèi)置的一種數(shù)據(jù)類型,是一種有序的集合,可以隨時(shí)添加和刪除其中的元素。

元組

tuple1 = ("zhangsan", "lisi")
print(tuple1[0])
>>>
zhangsan

tuple 和 list 非常類似,但是 tuple 一旦初始化就不能修改。

字典

dict1 = {"name1": "zhangsan", "name2": "lisi", "name3": "wangwu"}
dict1["name1"]
>>>
'zhangsan'

Python 內(nèi)置了字典:dict 全稱 dictionary,在其他語(yǔ)言中也稱為 map,使用鍵-值(key-value)存儲(chǔ),具有極快的查找速度。

集合

s = set([1, 2, 3])
print(s)
>>>
{1, 2, 3}

set 和 dict 類似,也是一組 key 的集合,但不存儲(chǔ) value。由于 key 不能重復(fù),所以,在 set 中,沒有重復(fù)的 key。

變量

變量的概念基本上和初中代數(shù)的方程變量是一致的,只是在計(jì)算機(jī)程序中,變量不僅可以是數(shù)字,還可以是任意數(shù)據(jù)類型。

a = 1
a = 3
print(a)
>>>
3

條件判斷

age = 30
if age >= 18:
    print('your age is', age)
    print('good')
else:
    Print('your are not belong here')
>>>
your age is 30
good

if ... else... 是非常經(jīng)典的條件判斷語(yǔ)句,if 后面接條件表達(dá)式,如果成立,則執(zhí)行下面的語(yǔ)句,否則執(zhí)行 else 后面的語(yǔ)句。同時(shí)還要注意,Python 語(yǔ)言是采用代碼縮進(jìn)的方式來判斷代碼塊的,一般是四個(gè)空格或者一個(gè) tab,兩者不要混用。

循環(huán)語(yǔ)句

names = {"zhangsan", "lisi", "wangwu"}
for name in names:
    print(name)
>>>
lisi
zhangsan
wangwu

names 是一個(gè)集合,為可迭代對(duì)象,使用 for 循環(huán),name 會(huì)依次被賦值給 names 中的元素值。

sum = 0
n = 99
while n > 0:
    sum = sum + n
    n = n - 2
print(sum)
>>>
2500

在循環(huán)內(nèi)部變量 n 不斷自減,直到變?yōu)?1時(shí),不再滿足 while 條件,循環(huán)退出。

高級(jí)特性

切片

L = ['zhangsan', 'lisi', 'wangwu', 'zhaoliu']
print(L[1])
print(L[1:3])
>>>
lisi
['lisi', 'wangwu']

Python 中,下標(biāo)都是從 0 開始的,且都是左閉右開區(qū)間

迭代

對(duì)于列表、元組和字典,都是可迭代對(duì)象,可以使用 for 來進(jìn)行迭代取值

L = ['zhangsan', 'lisi', 'wangwu', 'zhaoliu']
D = {"zhangsan":1, "lisi": 2, "wangwu": 3, "zhaoliu": 4}
for l in L:
    print(l)
print('\n')
for k,v in D.items():
    print("鍵:", k, ",", "值", v)
>>>
zhangsan
lisi
wangwu
zhaoliu

鍵: zhangsan , 值 1
鍵: lisi , 值 2
鍵: wangwu , 值 3
鍵: zhaoliu , 值 4

對(duì)于字典,使用 items(),可是同時(shí)遍歷鍵值對(duì)

函數(shù)

調(diào)用函數(shù)

Python 內(nèi)置了很多有用的函數(shù),我們可以直接調(diào)用

>>> abs(100)
100
>>> abs(-20)
20
>>> abs(12.34)
12.34
>>> max(1, 2)
2
>>> max(2, 3, 1, -5)
3

在調(diào)用函數(shù)時(shí),如果傳入的參數(shù)有問題,程序會(huì)拋出異常。
這里包含了 Python 中所有的內(nèi)置函數(shù):
https://docs.python.org/zh-cn/3/library/functions.html

定義函數(shù)

在 Python 中,定義一個(gè)函數(shù)要使用 def 語(yǔ)句,依次寫出函數(shù)名、括號(hào)、括號(hào)中的參數(shù)和冒號(hào):,然后,在縮進(jìn)塊中編寫函數(shù)體,函數(shù)的返回值用 return 語(yǔ)句返回。

def add(num1, num2):
    return num1 + num2

result = add(1,2)
print(result)

>>>
3

在代碼中,定義了一個(gè)叫做 add 的函數(shù),它會(huì)接收兩個(gè)參數(shù),并且會(huì)返回他們之和。函數(shù)定義之后,可以使用函數(shù)名稱后面跟()來調(diào)用,如果函數(shù)有返回值,可以賦給一個(gè)變量來接收。

模塊

調(diào)用模塊

Python 本身就內(nèi)置了很多非常有用的模塊,只要安裝完畢,這些模塊就可以立刻使用。

import time

def sayTime():
    now = time.time()
    return now

nowtime = sayTime()
print(nowtime)
>>>
1566550687.642805

使用 import 來導(dǎo)入模塊,之后就可以調(diào)用該模塊為我們提供的各種方法變量等。

模塊說白了就是一組工具的集合,我們當(dāng)然可以自己編寫一些工具,然后組成自己的模塊,供后面編程使用。

我們自己編寫模塊,一般目錄結(jié)構(gòu)如下

mytest
├─ __init__.py
├─ test1.py
└─ test2.py

現(xiàn)在我們就可以在其他的文件中引用并調(diào)用這兩個(gè) test 工具文件了

import mytest

mytest.test1

你應(yīng)該注意到了 init.py 文件,這個(gè)文件可以是空文件,包含了 init.py 文件的文件夾就是一個(gè)”包“(Package)。如果我們需要像上面那樣引用文件,就必須包含 init.py 文件。

安裝第三方模塊

在 Python 中,安裝第三方模塊,是通過包管理工具 pip 完成的。

一般來說,第三方庫(kù)都會(huì)在 Python 官方的 pypi.python.org 網(wǎng)站注冊(cè),要安裝一個(gè)第三方庫(kù),必須先知道該庫(kù)的名稱,可以在官網(wǎng)或者 pypi 上搜索,比如 Pillow 的名稱叫 Pillow,因此,安裝 Pillow 的命令就是:

pip install Pillow

面向?qū)ο缶幊?/h3>

類和實(shí)例

面向?qū)ο笞钪匾母拍罹褪穷悾–lass)和實(shí)例(Instance),必須牢記類是抽象的模板,比如 Student 類,而實(shí)例是根據(jù)類創(chuàng)建出來的一個(gè)個(gè)具體的“對(duì)象”,每個(gè)對(duì)象都會(huì)擁有類所提供的方法,但各自的數(shù)據(jù)可能不同,也可能各自定義不同的方法。

在 Python 中,使用 class 關(guān)鍵字來定義類

class Student(object):
    pass

定義好類之后,就可以實(shí)例化該類了

zhangsan = Student()
zhangsan.age = 20
print(Student)
print(zhangsan)
print(zhangsan.age)
>>>

<__main__.Student object at 0x00EA7350>
20

此時(shí),變量 zhangsan 就是類 Student 的一個(gè)實(shí)例了。同時(shí)我們還給 zhangsan 綁定了一個(gè)屬性 age 并賦值。

請(qǐng)謹(jǐn)記面向?qū)ο笕蠡疽兀撼橄?,封裝,繼承。如果你當(dāng)前對(duì)這些還沒有太多的概念的話,也不要緊,你可以在后面的學(xué)習(xí)中慢慢體會(huì)。

IO 編程

讀取文件,是后面要經(jīng)常用到的操作,在 Python 中,使用 open 函數(shù)可以非常方便的打開一個(gè)文件

f = open('/Users/tanxin/test.txt', 'r')
f.read()
f.close()

標(biāo)示符 'r' 表示讀,這樣,我們就成功地打開了一個(gè)文件,然后使用 read 函數(shù)來讀取文件內(nèi)容,最后用 close 來關(guān)閉文件。
文件使用完畢后必須關(guān)閉,因?yàn)槲募?duì)象會(huì)占用操作系統(tǒng)的資源,并且操作系統(tǒng)同一時(shí)間能打開的文件數(shù)量也是有限的

使用 with 來方便的打開文件

with open('/Users/tanxin/test.txt', 'r') as f:
    print(f.read())

with 語(yǔ)句幫助我們完成了 close 的過程

文件讀取還有 readline() 和 readlins() 兩個(gè)函數(shù)。readline() 一次讀取一行數(shù)據(jù),readlines() 一次讀取所有內(nèi)容并按行返回一個(gè)列表。

正則表達(dá)式

正則表達(dá)式是一個(gè)很大的學(xué)科,其中的內(nèi)容是完全可以單獨(dú)寫滿一本書的,我們這里只做些簡(jiǎn)單的介紹。

Python 中提供了 re 模塊來做正則

import re
str1 = "010-56765"
res = re.match(r'(\d{3})-(\d{5})', str1)
print(res)
print(res.group(0))
print(res.group(1))
print(res.group(2))
>>>

010-56765
010
56765

match() 方法判斷是否匹配,如果匹配成功,返回一個(gè) Match 對(duì)象,否則返回 None
配合 group 方法,可以有效的提取出字字符串。

requests 庫(kù)簡(jiǎn)介

requests 庫(kù),是一個(gè)非常常用的 HTTP 網(wǎng)絡(luò)請(qǐng)求庫(kù),后面的爬蟲課程,我們會(huì)大量的使用它。

import requests

r = requests.get('https://www.baidu.com')
r = requests.post('http://test.com/post', data = {'key':'value'})

payload = {'key1': 'value1', 'key2': 'value2'}
r = requests.get("http://test.com/get", params=payload)

此時(shí)的 r 是一個(gè) response 對(duì)象,我們可以從中獲取到相關(guān)信息

r.text  # 獲取響應(yīng)內(nèi)容
r.content  # 以字節(jié)的方式讀取響應(yīng)信息
response.encoding = "utf-8"  # 改變其編碼 
html = response.text  # 獲得網(wǎng)頁(yè)內(nèi)容 
binary__content = response.content  # 獲得二進(jìn)制數(shù)據(jù) 
raw = requests.get(url, stream=True)  # 獲得原始響應(yīng)內(nèi)容 
headers = {'user-agent': 'my-test/0.1.1'}  # 定制請(qǐng)求頭 
r = requests.get(url, headers=headers) 
cookies = {"cookie": "# your cookie"}  # cookie 的使用 
r = requests.get(url, cookies=cookies)

這里只是簡(jiǎn)單介紹了 Python 的語(yǔ)法,如果要深入學(xué)習(xí),你還需要花費(fèi)更多的精力。不過世上無(wú)難事,只怕肯攀登。不要一直停留在入門的階段,平時(shí)多找些刷題的網(wǎng)站,比如 Leetcode,online Judge 等等,在刷題的同時(shí),更能鍛煉自己的編程思維和算法能力。

總結(jié)

本節(jié)課我們知道 Python 作為數(shù)據(jù)分析領(lǐng)域最主流的語(yǔ)言,掌握它是必備的技能。同時(shí)還了解了 Python 的一些基本語(yǔ)法,相信你一定體會(huì)到了它的簡(jiǎn)潔之處。下面就是練習(xí),練習(xí),再練習(xí)了。俗話說,熟能生巧,巧后達(dá)精。我們只有把 Python 這個(gè)工具完全掌握熟練,在進(jìn)行數(shù)據(jù)分析的時(shí)候,就會(huì)事半功倍了。

Python基礎(chǔ)-你必備的語(yǔ)言技能包

練習(xí)題

第一題:定義一個(gè)函數(shù),求解 1 到 99 之和,再以面向?qū)ο蟮乃季S,定義一個(gè)類,使得調(diào)用該類的方法來計(jì)算數(shù)字之和。

第二題:嘗試用 requests 庫(kù)獲取某個(gè)網(wǎng)站的響應(yīng)信息

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。


新聞名稱:Python基礎(chǔ)-你必備的語(yǔ)言技能包-創(chuàng)新互聯(lián)
分享地址:http://weahome.cn/article/hhdsp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部