日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

❤️《10个超级常用Python方法总结》复制即用丨小白捷径【文末赠书2本】❤️

發(fā)布時(shí)間:2024/7/23 python 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ❤️《10个超级常用Python方法总结》复制即用丨小白捷径【文末赠书2本】❤️ 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

🍅 作者:不吃西紅柿?

🍅 簡(jiǎn)介:CSDN博客專家🏆、HDZ核心組成員💪、C站總榜前10名?? 歡迎點(diǎn)贊、收藏、評(píng)論

🍅 粉絲專屬福利(文末送書2本)簡(jiǎn)歷模板、PPT模板、學(xué)習(xí)資料、面試題庫(kù)。直接去文末領(lǐng)取

目錄

1、發(fā)送郵件

2、操作數(shù)據(jù)庫(kù):MySQLdb

3、網(wǎng)絡(luò)爬蟲:requests

4、操作execl:pandas

5、操作系統(tǒng)接口

6、數(shù)據(jù)分析:numpy

7、數(shù)據(jù)畫圖分析:Matplotlib

8、字符串正則匹配

9、游戲開(kāi)發(fā):pygame

10、數(shù)據(jù)壓縮

【粉絲福利,送書2本】


1、發(fā)送郵件

有幾個(gè)模塊用于訪問(wèn)互聯(lián)網(wǎng)以及處理網(wǎng)絡(luò)通信協(xié)議。其中最簡(jiǎn)單的兩個(gè)是用于處理從 urls 接收的數(shù)據(jù)的 urllib.request 以及用于發(fā)送電子郵件的 smtplib:

import smtplib smtpObj = smtplib.SMTP( [host [, port [, local_hostname]]] )

參數(shù)說(shuō)明

  • host: SMTP 服務(wù)器主機(jī)。 你可以指定主機(jī)的ip地址或者域名如: runoob.com,這個(gè)是可選參數(shù)。
  • port: 如果你提供了 host 參數(shù), 你需要指定 SMTP 服務(wù)使用的端口號(hào),一般情況下 SMTP 端口號(hào)為25。
  • local_hostname: 如果 SMTP 在你的本機(jī)上,你只需要指定服務(wù)器地址為 localhost 即可。

Python SMTP 對(duì)象使用 sendmail 方法發(fā)送郵件,語(yǔ)法如下:

SMTP.sendmail(from_addr, to_addrs, msg[, mail_options, rcpt_options])

參數(shù)說(shuō)明

  • from_addr: 郵件發(fā)送者地址。
  • to_addrs: 字符串列表,郵件發(fā)送地址。
  • msg: 發(fā)送消息

案例:

#!/usr/bin/python # -*- coding: UTF-8 -*-import smtplib from email.mime.text import MIMEText from email.header import Headersender = 'from@runoob.com' # 公眾號(hào):信息技術(shù)智庫(kù) receivers = ['429240967@qq.com'] ?# 接收郵件,可設(shè)置為你的QQ郵箱或者其他郵箱# 三個(gè)參數(shù):第一個(gè)為文本內(nèi)容,第二個(gè) plain 設(shè)置文本格式,第三個(gè) utf-8 設(shè)置編碼 message = MIMEText('Python 郵件發(fā)送測(cè)試...', 'plain', 'utf-8') message['From'] = Header("西紅柿大神", 'utf-8') ? # 發(fā)送者 message['To'] = ?Header("測(cè)試", 'utf-8') ? ? ? ?# 接收者subject = 'Python SMTP 郵件測(cè)試' message['Subject'] = Header(subject, 'utf-8')try:smtpObj = smtplib.SMTP('localhost')smtpObj.sendmail(sender, receivers, message.as_string())print "郵件發(fā)送成功" except smtplib.SMTPException:print "Error: 無(wú)法發(fā)送郵件"

2、操作數(shù)據(jù)庫(kù):MySQLdb

安裝MySQLdb,請(qǐng)?jiān)L問(wèn) http://sourceforge.net/projects/mysql-python?

操作mysql查數(shù)據(jù)

import MySQLdb# 連接數(shù)據(jù)庫(kù)  conn = MySQLdb.connect(host='localhost',user='root',passwd='xxxx',db='test1')# 獲取cursor對(duì)象來(lái)進(jìn)行操作 cursor = conn.cursor()# 更多資料:https://t.1yb.co/zHJo sql = "select * from world where someone like 'you' "# 執(zhí)行sql cursor.execute(sql)

3、網(wǎng)絡(luò)爬蟲:requests

Requests 允許你發(fā)送純天然的 HTTP/1.1 請(qǐng)求,無(wú)需手工勞動(dòng)。你不需要手動(dòng)為 URL 添加查詢字串,也不需要對(duì) POST 數(shù)據(jù)進(jìn)行表單編碼。Keep-alive 和 HTTP 連接池的功能是 100% 自動(dòng)化的。

一個(gè)簡(jiǎn)單的爬蟲樣例:

#公眾號(hào):信息技術(shù)智庫(kù) import requests heads = {} heads['User-Agent'] = 'Mozilla/5.0 ' \'(Macintosh; U; Intel Mac OS X 10_6_8; en-us) AppleWebKit/534.50 ' \'(KHTML, like Gecko) Version/5.1 Safari/534.50'response = requests.get('http://www.baidu.com',headers=headers)

4、操作execl:pandas

# -*- coding: utf-8 -*- import xlrdimport xlwt from datetime import date,datetimedef read_excel():# 打開(kāi)文件workbook = xlrd.open_workbook(r'F:\demo.xlsx')# 獲取所有sheetprint workbook.sheet_names() # [u'sheet1', u'sheet2']sheet2_name = workbook.sheet_names()[1]# 根據(jù)sheet索引或者名稱獲取sheet內(nèi)容sheet2 = workbook.sheet_by_index(1) # sheet索引從0開(kāi)始sheet2 = workbook.sheet_by_name('sheet2')# sheet的名稱,行數(shù),列數(shù)print sheet2.name,sheet2.nrows,sheet2.ncols# 獲取整行和整列的值(數(shù)組)rows = sheet2.row_values(3) # 獲取第四行內(nèi)容cols = sheet2.col_values(2) # 獲取第三列內(nèi)容print rowsprint cols# 獲取單元格內(nèi)容print sheet2.cell(1,0).value.encode('utf-8')print sheet2.cell_value(1,0).encode('utf-8')print sheet2.row(1)[0].value.encode('utf-8')# 獲取單元格內(nèi)容的數(shù)據(jù)類型print sheet2.cell(1,0).ctypeif __name__ == '__main__':read_excel()

5、操作系統(tǒng)接口

os模塊提供了不少與操作系統(tǒng)相關(guān)聯(lián)的函數(shù)。

>>> import os >>> os.getcwd() # 返回當(dāng)前的工作目錄 'C:\\Python34' >>> os.chdir('/server/accesslogs') # 修改當(dāng)前的工作目錄 >>> os.system('mkdir today') # 執(zhí)行系統(tǒng)命令 mkdir 0

建議使用 "import os" 風(fēng)格而非 "from os import *"。這樣可以保證隨操作系統(tǒng)不同而有所變化的 os.open() 不會(huì)覆蓋內(nèi)置函數(shù) open()。

os常用命令

序號(hào)方法功能
1os.access(path, mode)??檢驗(yàn)權(quán)限模式
2os.chdir(path)? ?改變當(dāng)前工作目錄
3os.chflags(path, flags)??設(shè)置路徑的標(biāo)記為數(shù)字標(biāo)記。
4os.chmod(path, mode)? ??更改權(quán)限
5os.chown(path, uid, gid)??更改文件所有者
6os.chroot(path)? ?改變當(dāng)前進(jìn)程的根目錄
7os.close(fd)? ??關(guān)閉文件描述符 fd
8os.closerange(fd_low, fd_high)? ??關(guān)閉所有文件描述符,從 fd_low (包含) 到 fd_high (不包含), 錯(cuò)誤會(huì)忽略
9os.dup(fd)? ??復(fù)制文件描述符 fd
10os.dup2(fd, fd2)? ??

將一個(gè)文件描述符 fd 復(fù)制到另一個(gè) fd2

6、數(shù)據(jù)分析:numpy

NumPy 包含大量的各種數(shù)學(xué)運(yùn)算的函數(shù),包括三角函數(shù),算術(shù)運(yùn)算的函數(shù),復(fù)數(shù)處理函數(shù)等。

NumPy 提供了多種排序的方法。 這些排序函數(shù)實(shí)現(xiàn)不同的排序算法,每個(gè)排序算法的特征在于執(zhí)行速度,最壞情況性能,所需的工作空間和算法的穩(wěn)定性。 下表顯示了三種排序算法的比較。

三角函數(shù)

NumPy 提供了標(biāo)準(zhǔn)的三角函數(shù):sin()、cos()、tan()。

import numpy as npa = np.array([0,30,45,60,90]) print ('不同角度的正弦值:') # 通過(guò)乘 pi/180 轉(zhuǎn)化為弧度 print (np.sin(a*np.pi/180)) print ('\n') print ('數(shù)組中角度的余弦值:') print (np.cos(a*np.pi/180)) print ('\n') print ('數(shù)組中角度的正切值:') print (np.tan(a*np.pi/180))

7、數(shù)據(jù)畫圖分析:Matplotlib

import numpy as np from matplotlib import pyplot as plt x = np.arange(1,11) y = 2 * x + 5 plt.title("Matplotlib demo") plt.xlabel("x axis caption") plt.ylabel("y axis caption") plt.plot(x,y) plt.show()

以上實(shí)例中,np.arange() 函數(shù)創(chuàng)建 x 軸上的值。y 軸上的對(duì)應(yīng)值存儲(chǔ)在另一個(gè)數(shù)組對(duì)象 y 中。 這些值使用 matplotlib 軟件包的 pyplot 子模塊的 plot() 函數(shù)繪制。

圖形由 show() 函數(shù)顯示。

8、字符串正則匹配

re模塊為高級(jí)字符串處理提供了正則表達(dá)式工具。可以說(shuō)是爬蟲必備,對(duì)于復(fù)雜的匹配和處理,正則表達(dá)式提供了簡(jiǎn)潔、優(yōu)化的解決方案:如果只需要簡(jiǎn)單的功能,應(yīng)該首先考慮字符串方法,因?yàn)樗鼈兎浅:?jiǎn)單,易于閱讀和調(diào)試:

>>> 'tea for too'.replace('too', 'two') 'tea for two'

re.match函數(shù)

re.match 嘗試從字符串的起始位置匹配一個(gè)模式,如果不是起始位置匹配成功的話,match()就返回none。

函數(shù)語(yǔ)法

re.match(pattern, string, flags=0)

函數(shù)參數(shù)說(shuō)明:

參數(shù)描述
pattern匹配的正則表達(dá)式
string要匹配的字符串。
flags標(biāo)志位,用于控制正則表達(dá)式的匹配方式,如:是否區(qū)分大小寫,多行匹配等等。

匹配成功re.match方法返回一個(gè)匹配的對(duì)象,否則返回None。

我們可以使用group(num) 或 groups() 匹配對(duì)象函數(shù)來(lái)獲取匹配表達(dá)式。

匹配對(duì)象方法描述
group(num=0)匹配的整個(gè)表達(dá)式的字符串,group() 可以一次輸入多個(gè)組號(hào),在這種情況下它將返回一個(gè)包含那些組所對(duì)應(yīng)值的元組。
groups()返回一個(gè)包含所有小組字符串的元組,從 1 到 所含的小組號(hào)。

9、游戲開(kāi)發(fā):pygame

  • Pygame是一組跨平臺(tái)的Python模塊, 用于創(chuàng)建視頻游戲。
  • 它由旨在與Python編程語(yǔ)言一起使用的計(jì)算機(jī)圖形和聲音庫(kù)組成。
  • Pygame由Pete Shinners正式編寫, 以取代PySDL。
  • Pygame適合于創(chuàng)建客戶端應(yīng)用程序, 這些應(yīng)用程序可以包裝在獨(dú)立的可執(zhí)行文件中。
import pygamepygame.init() screen = pygame.display.set_mode((400, 500)) done = Falsewhile not done:for event in pygame.event.get():if event.type == pygame.QUIT:done = Truepygame.display.flip()

10、數(shù)據(jù)壓縮

以下模塊直接支持通用的數(shù)據(jù)打包和壓縮格式:zlib,gzip,bz2,zipfile,以及 tarfile。

>>> import zlib >>> s = b'witch which has which witches wrist watch' >>> len(s) 41 >>> t = zlib.compress(s) >>> len(t) 37 >>> zlib.decompress(t) b'witch which has which witches wrist watch' >>> zlib.crc32(s) 226805979

【粉絲福利:送書2本】

【書名】Python 3.x基礎(chǔ)教程》

【如何獲得】評(píng)論區(qū)留言點(diǎn)贊收藏,通過(guò)python random函數(shù)從評(píng)論區(qū)抽獎(jiǎng)2人,我會(huì)私聊獲獎(jiǎng)人提供地址信息,并在下期文章公示快遞記錄

【內(nèi)容簡(jiǎn)介】

《Python 3.x基礎(chǔ)教程》以零基礎(chǔ)講解為宗旨,旨在幫助讀者掌握 Python 語(yǔ)言的基礎(chǔ)知識(shí),以及如何使用Python 語(yǔ)言實(shí)現(xiàn)編程,了解其開(kāi)發(fā)技巧,并通過(guò)實(shí)戰(zhàn)案例熟悉開(kāi)發(fā)過(guò)程及問(wèn)題的解決方法。
  全書共分 13 章,大致分為 4 部分: 1~4 章介紹 Python 簡(jiǎn)介及環(huán)境搭建、 Python 基礎(chǔ)和面向?qū)ο蟮木幊讨R(shí);第 5~7 章介紹讀寫文件、自帶電池模塊及系統(tǒng)編程的知識(shí);第 8~11章介紹網(wǎng)絡(luò)編程、收發(fā)電子郵件、圖形用戶界面和 Web 開(kāi)發(fā);第 12、 13 章通過(guò)兩個(gè)綜合案例的講解,將全書各個(gè)知識(shí)點(diǎn)融會(huì)貫通,加深讀者對(duì)所學(xué)知識(shí)的理解。


  本書專為沒(méi)有任何 Python基礎(chǔ)的初學(xué)者和愛(ài)好者打造,無(wú)論你是否從事計(jì)算機(jī)相關(guān)專業(yè),是否有過(guò) Python 項(xiàng)目經(jīng)驗(yàn),或是否想要轉(zhuǎn)行從事計(jì)算機(jī)相關(guān)專業(yè),均可通過(guò)本書快速掌握Python 的基本知識(shí)和開(kāi)發(fā)技巧。

🍅 行業(yè)資料:關(guān)注即可領(lǐng)取PPT模板、簡(jiǎn)歷模板、行業(yè)經(jīng)典書籍PDF。
🍅 交流加群:大佬指點(diǎn)迷津,你的問(wèn)題往往有人遇到過(guò),求資源在群里喊一聲。
🍅 面試題庫(kù):由技術(shù)群里的小伙伴們共同投稿,熱乎的大廠面試真題,持續(xù)更新中。
🍅 學(xué)習(xí)資料:含編程語(yǔ)言、算法、大數(shù)據(jù)生態(tài)圈組件(Mysql、Hive、Spark、Flink)、數(shù)據(jù)倉(cāng)庫(kù)、前端等。

👇👇👇更多粉絲福利👇👇👇

總結(jié)

以上是生活随笔為你收集整理的❤️《10个超级常用Python方法总结》复制即用丨小白捷径【文末赠书2本】❤️的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。