欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

6個(gè)Python辦公黑科技,助你提升工作效率

 更新時(shí)間:2021年08月27日 14:59:32   作者:不吃西紅柿丶  
這篇文章主要介紹了Python辦公黑科技,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們有非常好的幫助,需要的朋友可以參考下

一、解析PDF(簡(jiǎn)歷內(nèi)推)

應(yīng)用場(chǎng)景:簡(jiǎn)歷內(nèi)推(解析內(nèi)容:包括不限于姓名、郵箱、電話號(hào)碼、學(xué)歷等信息)

輸入:要解析的文件路徑

輸出:需要解析的內(nèi)容(點(diǎn)我主頁(yè),詳見(jiàn)歷史文章)

環(huán)境準(zhǔn)備:python 3.6 、mac(下文中doc轉(zhuǎn)docx是mac寫(xiě)法,windows更簡(jiǎn)單,導(dǎo)入win32的包即可)

依賴(lài)包:

# encoding: utf-8
import os, sys
from pdfminer.pdfparser import PDFParser
from pdfminer.pdfdocument import PDFDocument
from pdfminer.pdfpage import PDFPage
from pdfminer.pdfinterp import PDFResourceManager
from pdfminer.pdfinterp import PDFPageInterpreter
from pdfminer.layout import LAParams
from pdfminer.converter import PDFPageAggregator

二、發(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 smtplibfrom email.mime.text 
import MIMETextfrom email.header 
import Header sender = 'from@runoob.com'
# 西紅柿微:ZPYDWXYreceivers = ['1221121@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ā)送郵件"

三、操作execl

1. 關(guān)聯(lián)公式:Vlookup

vlookup是excel幾乎最常用的公式,一般用于兩個(gè)表的關(guān)聯(lián)查詢等。所以我先把這張表分為兩個(gè)表。

#查看訂單明細(xì)號(hào)是否重復(fù),結(jié)果是沒(méi)。
df1["訂單明細(xì)號(hào)"].duplicated().value_counts()
df2["訂單明細(xì)號(hào)"].duplicated().value_counts()

df_c=pd.merge(df1,df2,on="訂單明細(xì)號(hào)",how="left")

2. 數(shù)據(jù)透視表

需求:想知道每個(gè)地區(qū)的業(yè)務(wù)員分別賺取的利潤(rùn)總和與利潤(rùn)平均數(shù)。

pd.pivot_table(sale,index="地區(qū)名稱(chēng)",columns="業(yè)務(wù)員名稱(chēng)",values="利潤(rùn)",aggfunc=[np.sum,np.mean])

3. 對(duì)比兩列差異

需求:比較訂單明細(xì)號(hào)與訂單明細(xì)號(hào)2的差異并顯示出來(lái)。

sale["訂單明細(xì)號(hào)2"]=sale["訂單明細(xì)號(hào)"]

#在訂單明細(xì)號(hào)2里前10個(gè)都+1.
sale["訂單明細(xì)號(hào)2"][1:10]=sale["訂單明細(xì)號(hào)2"][1:10]+1

#差異輸出
result=sale.loc[sale["訂單明細(xì)號(hào)"].isin(sale["訂單明細(xì)號(hào)2"])==False]

4. 去除重復(fù)值

需求:去除業(yè)務(wù)員編碼的重復(fù)值

sale.drop_duplicates("業(yè)務(wù)員編碼",inplace=True)

5. 缺失值處理

#用0填充缺失值
sale["客戶名稱(chēng)"]=sale["客戶名稱(chēng)"].fillna(0)
#刪除有客戶編碼缺失值的行
sale.dropna(subset=["客戶編碼"])

6. 多條件篩選

需求:想知道業(yè)務(wù)員張愛(ài),在北京區(qū)域賣(mài)的商品訂單金額大于6000的信息。

sale.loc[(sale["地區(qū)名稱(chēng)"]=="北京")&(sale["業(yè)務(wù)員名稱(chēng)"]=="張愛(ài)")&(sale["訂單金額"]>5000)]

7. 模糊篩選數(shù)據(jù)

需求:篩選存貨名稱(chēng)含有"三星"或則含有"索尼"的信息。

sale.loc[sale["存貨名稱(chēng)"].str.contains("三星|索尼")]

8. 分類(lèi)匯總

需求: 北京區(qū)域各業(yè)務(wù)員的利潤(rùn)總額。

sale.groupby(["地區(qū)名稱(chēng)","業(yè)務(wù)員名稱(chēng)"])["利潤(rùn)"].sum()

9. 條件計(jì)算

需求:存貨名稱(chēng)含“三星字眼”并且稅費(fèi)高于1000的訂單有幾個(gè)?這些訂單的利潤(rùn)總和和平均利潤(rùn)是多少?(或者最小值,最大值,四分位數(shù),標(biāo)注差)

sale.loc[sale["存貨名稱(chēng)"].str.contains("三星")&(sale["稅費(fèi)"]>=1000)][["訂單明細(xì)號(hào)","利潤(rùn)"]].describe()

10. 刪除數(shù)據(jù)間的空格

需求:刪除存貨名稱(chēng)兩邊的空格。

sale["存貨名稱(chēng)"].map(lambda s :s.strip(""))

四、畫(huà)圖分析

英雄聯(lián)盟防御力:

防御能力最低的英雄(1級(jí)): 暗夜獵手,魔法貓咪,萬(wàn)花通靈

防御能力最高的英雄(10級(jí)): 正義巨像,披甲龍龜

安妮、卡爾瑪能力矩陣:

代碼示例:

# encoding: utf-8
import json
from pyecharts.charts import Pie
from pyecharts import options as opts
from pyecharts.charts import Radar



def draw_Radar():
    from pyecharts.charts import Radar
    radar = Radar()
    # //由于雷達(dá)圖傳入的數(shù)據(jù)得為多維數(shù)據(jù),所以這里需要做一下處理
    radar_data = [[10, 10, 10, 10, 10]]
    radar_data1 = [[2, 10, 3, 6, 3]]
    radar_data2 = [[1, 8, 7, 5, 8]]

    # //設(shè)置column的最大值,為了雷達(dá)圖更為直觀,這里的月份最大值設(shè)置有所不同
    schema = [
        ("物理", 100), ("魔法", 10), ("防御", 10),("難度", 10),("喜好", 10)
    ]
    # //傳入坐標(biāo)
    radar.add_schema(schema)
    radar.add("滿分", radar_data)
    # //一般默認(rèn)為同一種顏色,這里為了便于區(qū)分,需要設(shè)置item的顏色
    radar.add("安妮", radar_data1, color="#E37911")
    radar.add("卡爾瑪", radar_data2, color="#1C86EE")
    radar.render()

if __name__ == '__main__':

    draw_Radar()



五、解析word(docx、doc)

依賴(lài)包:

# encoding: utf-8
import os, sys
import docx
def word_reader(file):
    try:
        # docx 直接讀
        if 'docx' in file:
            res = ''
            f = docx.Document(file)
            for para in f.paragraphs:
                res = res + '\n' +para.text
        else:
            # 先轉(zhuǎn)格式doc>docx
            os.system("textutil -convert docx '%s'"%file)
            word_reader(file+'x')
            res = ''
            f = docx.Document(file+'x')
            for para in f.paragraphs:
                res = res + '\n' +para.text
        return res
    except:
        # print(file, 'read failed')
        return ''

六、計(jì)算器

math模塊為浮點(diǎn)運(yùn)算提供了對(duì)底層函數(shù)庫(kù)的訪問(wèn):

>>> import math
>>> math.cos(math.pi / 4)
0.70710678118654757
>>> math.log(1024, 2)
10.0

總結(jié)

本篇文章就到這里了,希望能給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • Python入門(mén)教程(二)Python快速上手

    Python入門(mén)教程(二)Python快速上手

    這篇文章主要介紹了Python入門(mén)教程(二)Python快速上手,Python是一門(mén)非常強(qiáng)大好用的語(yǔ)言,也有著易上手的特性,本文為入門(mén)教程,需要的朋友可以參考下
    2023-04-04
  • Python創(chuàng)建7種不同的文件格式的方法總結(jié)

    Python創(chuàng)建7種不同的文件格式的方法總結(jié)

    今天的這篇文章呢,小編來(lái)介紹一下如何通過(guò)Python來(lái)創(chuàng)建各種形式的文件,這里包括了:文本文件、CSV文件、Excel文件、壓縮文件、XML文件、JSON文件和PDF文件,需要的可以參考一下
    2023-01-01
  • PyQt5實(shí)現(xiàn)進(jìn)度條與定時(shí)器及子線程同步關(guān)聯(lián)

    PyQt5實(shí)現(xiàn)進(jìn)度條與定時(shí)器及子線程同步關(guān)聯(lián)

    這篇文章主要為大家詳細(xì)介紹了PyQt5如何實(shí)現(xiàn)進(jìn)度條與定時(shí)器及子線程的同步關(guān)聯(lián),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2023-01-01
  • python實(shí)現(xiàn)拓?fù)渑判虻姆椒ú襟E

    python實(shí)現(xiàn)拓?fù)渑判虻姆椒ú襟E

    拓?fù)渑判蚴菍?duì)有向無(wú)環(huán)圖進(jìn)行排序的一種算法,本文主要介紹了python實(shí)現(xiàn)拓?fù)渑判虻姆椒ú襟E,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • 在Python中使用mechanize模塊模擬瀏覽器功能

    在Python中使用mechanize模塊模擬瀏覽器功能

    這篇文章主要介紹了在Python中使用mechanize模塊模擬瀏覽器功能,包括使用cookie和設(shè)置代理等功能的實(shí)現(xiàn),需要的朋友可以參考下
    2015-05-05
  • Python調(diào)用API接口實(shí)現(xiàn)人臉識(shí)別

    Python調(diào)用API接口實(shí)現(xiàn)人臉識(shí)別

    本文主要介紹了Python調(diào)用API接口實(shí)現(xiàn)人臉識(shí)別,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • 基于tkinter中ttk控件的width-height設(shè)置方式

    基于tkinter中ttk控件的width-height設(shè)置方式

    這篇文章主要介紹了基于tkinter中ttk控件的width-height設(shè)置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • 利用Python?Matlab繪制曲線圖的簡(jiǎn)單實(shí)例

    利用Python?Matlab繪制曲線圖的簡(jiǎn)單實(shí)例

    們經(jīng)常會(huì)遇到這種情況,有一個(gè)數(shù)學(xué)函數(shù),我們希望了解他的圖像,這個(gè)時(shí)候使用python 的matplotlib就可以幫助我們,下面這篇文章主要介紹了利用Python?Matlab繪制曲線圖的相關(guān)資料,需要的朋友可以參考下
    2021-12-12
  • 講清楚fit_transform()和transform()的區(qū)別及說(shuō)明

    講清楚fit_transform()和transform()的區(qū)別及說(shuō)明

    這篇文章主要介紹了講清楚fit_transform()和transform()的區(qū)別及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • 一份python入門(mén)應(yīng)該看的學(xué)習(xí)資料

    一份python入門(mén)應(yīng)該看的學(xué)習(xí)資料

    關(guān)于python入門(mén)你應(yīng)該看這些資料,幫助你快速入門(mén)python,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04

最新評(píng)論