pythonexcel個條件
① 如何用python將表格一整行條件格式化突出顯示特定值
實現思路其它比較簡單
用python打開你的excel文件,
循環遍歷每個單元各的內容。
檢查這個單元格中的值是否符合你的條件。
如符合條件,單元格的背景色設為淡紅色。
不符合條件,單無格的背景色設為淡綠色。
如有其它問題還可以追問。
② Python的if 條件語句
Python 中用if語句進行條件判斷;與Excel 中的if作用有些類似,具體的語句如下:
if 條件:
結果
else:
結果
下面我們來舉例進行說明:
例1:年齡>=18歲,輸出「成年了」;否則輸出「未成年」
age = 16
if age >= 18:
print("成年了")
else:
print("未成年")
當存在兩個以上條件時,可在if條件判斷後,增加 elif(else if 的縮寫)繼續進行分支條件判斷。
說明:分支條件判斷的結果輸出,當滿足第一個條件時既停止後續判斷並返回第一個結果;當滿足第二個條件時既停止後續判斷並返回第二個結果;以此類推,如果全部條件判斷均不滿足,則返回else的結果。
例2:年齡<18歲,「未成年」; 18歲 =<年齡<40歲,「青年」; 40歲 =<年齡<60歲,「中年」;年齡>=60歲,「老年」
age = 25
if age >= 60:
print("老年")
elif age >= 40:
print("中年")
elif age >=18:
print("青年")
else:
print("未成年")
註:第二個條件中 可以直接寫 「age >=40」; 無需寫成 40 =<age<60;因為當判斷大盤第二個條件時,已經不滿足第一個條件、即age !>=60(age < 60),所以「<60」部分可省略。第三個條件同理
條件分支的簡單表達:三元表達式
我們將例1(:年齡>=18歲,輸出「成年了」;否則輸出「未成年」)改寫為「三元表達式」
age = 59
result ="成年" if age >=18 else "未成年"
print(result)
註:僅有兩個條件判斷時,可使用三元表達式進行簡寫
例3:國籍=china ,輸出「中國人」;否則輸出「外國人」
nationality = "England"
result = "中國人" if nationality == "china" else "外國人"
print(result)
註:一個「=」代表賦值,「==」代表等於
例4:通過身份證號判斷性別(身份證號17位單號為男性,雙號為女性)
id = "2308__________2642"
result = "女" if int(id[17]) % 2 == 0 else "男"
print(result)
註:id的類型為字元串,需要通過「int()」函數將其轉換為整數; 」%」代表取余數,
「XX % 2 ==0 」 代表XX除2餘數為0即偶數.
③ 如何用python操作excel
指定選取三列然後挑選出同時滿足>=1或者同時<=-1的 將其所有數據存入新的csv表格中
程序如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date : 2014-04-10 21:47:56
# @Function: 指定選取三列然後挑選出同時滿足>=1或者同時<=-1的 將其所有數據存入新的csv表格中
# @Author : BeginMan
import os
import string
import xlrd
import xlwt
def get_data():
"""獲取excel數據源"""
file = r'C:\Users\Administrator\Desktop\pytool\xlrd\initial_log_data.xls' # 改成自己的路徑
filepath = raw_input(u'請將xls文件路徑粘貼進去,如果程序里已經指定了文件則按Enter鍵繼續:')
is_valid = False # 驗證文件
try:
filepath = [file, filepath][filepath != '']
print filepath
# 判斷給出的路徑是不是xls格式
if os.path.isfile(filepath):
filename = os.path.basename(filepath)
if filename.split('.')[1] == 'xls':
is_valid = True
data = None
if is_valid:
data = xlrd.open_workbook(filepath)
except Exception, e:
print u'你操作錯誤:%s' %e
return None
return data
def handle_data():
"""處理數據"""
data = get_data()
if data:
col_format = ['B', 'C', 'D'] # 指定的列
inp = raw_input(u'請選擇指定的三列,用逗號分隔,默認的是B,C,D(英文逗號,不區分大小寫),如果選擇默認則按Enter鍵繼續:\n')
try:
inp = inp.split(',')
col_format = [col_format,inp][len([i for i in inp if i in string.letters]) == 3]
col_format = [i.upper() for i in col_format] # 轉換成大寫
table = data.sheet_by_index(0) # 選取第一個工作區
nrows = table.nrows # 行數
ncols = table.ncols # 列數
str_upcase = [i for i in string.uppercase] # 所有大寫字母
i_upcase = range(len(str_upcase)) # 對應的數字
ncols_dir = dict(zip(str_upcase,i_upcase)) # 格式成字典
col_index = [ncols_dir.get(i) for i in col_format] # 獲取指定列所對應的索引
# 選取的三列是否同時滿足 >=1或者同時<=-1
print u'正在檢索中……'
count = 0
result = []
for i in xrange(nrows):
cell_0 = table.cell(i,col_index[0]).value
cell_1 = table.cell(i,col_index[1]).value
cell_2 = table.cell(i,col_index[2]).value
if (cell_0>=1 and cell_1>=1 and cell_2>=1) or (cell_0<=-1 and cell_1<=-1 and cell_2<=-1):
result.append(table.row_values(i)) # 將符合要求的一行添加進去
count += 1
print u'該文件中共%s行,%s列,其中滿足條件的共有%s條數據' %(nrows, ncols, count)
print u'正在寫入數據……'
col_name = col_format[0]+col_format[1]+col_format[2]
if write_data(result, col_name):
print u'寫入成功!'
except Exception, e:
print u'你操作錯誤:%s' %e
return None
else:
print u'操作失敗'
return None
def write_data(data, name):
"""寫入數據,data為符合條件的數據列表,name表示指定的哪三個列,以此命名"""
file = xlwt.Workbook()
table = file.add_sheet(name,cell_overwrite_ok=True)
l = 0 # 表示行
for line in data:
c = 0 # 表示一行下的列數
for col in line:
table.write(l,c,line[c])
c += 1
l += 1
defatul_f = r'C:\Users\Administrator\Desktop\pytool\xlrd' # 默認路徑
f = raw_input(u'請選擇保存文件的路徑:按回車跳過:')
f_name = r'\%s.xls' % name
filepath = [defatul_f+f_name, f+f_name][f != '']
file.save(filepath)
return True
def main():
handle_data()
if __name__ == '__main__':
main()
④ python處理excel教程是什麼
python處理excel教程:首先打開pycharm工具,創建python項目;然後新建python文件,依次導入openpyxl、xlrd和xlwt,並定義函數;接著向excel插入數據;最後調用函數載入數據即可。
python處理excel教程:
1、打開pycharm工具,創建一個python項目,並打開項目
2、在指定文件夾下,新建python文件,依次導入openpyxl、xlrd和xlwt
3、定義函數write_data,創建excel的sheet頁,然後向excel插入數據
4、再定義設置excel文檔格式樣式函數setExcelStyle,傳入幾個參數
5、判斷__name__是否等於__main__,調用函數write_data()
6、保存代碼並運行python文件,查看是否生成sales.xlsx文件
7、使用openpyxl模塊中的load_workbook()方法,載入sales.xlsx文件
8、獲取對應sheet頁,然後獲取對應單元格的值
以上就是小編分享的關於python處理excel教程是什麼的詳細內容希望對大家有所幫助,更多有關python教程請關注環球青藤其它相關文章!
⑤ python excel操作 python操作excel方法
1、配置好python環境變數,這里使用的是python3。
2、環境變數中配置好pip工具,安裝python調用excel所需要的驅動都是通過pip進行安裝的。
3、安裝xlrd模塊
命令:pip install xlrd。
4、安裝xlwt模塊
命令:pip install xlwt。
5、驗證xlrd模塊,用import導入如果沒報錯就表明安裝正常。
6、驗證xlwt模塊,用import導入如果沒報錯就表明安裝正常。
⑥ 自學Python:根據條件拆分excel表格
下面這個表格里有很多種類的水果,想要根據水果種類分成多個表格,每個表格單獨顯示一個種類的水果。
使用下面的語句:
import xlwings as xw
import pandas as pd
app = xw.App(visible =True, add_book =False)
workbook = app.books.open('e:\\table\\工作表.xlsx')
worksheet = workbook.sheets['統計表']
value = worksheet.range('A1').options(pd.DataFrame, header =1, index =False, expand ='table').value
data = value.groupby('種類')# 將數據按照「種類」分組
for idx, groupin data:
new_worksheet = workbook.sheets.add(idx)# 在工作簿中新增工作表並命名為當前的產品名稱
new_worksheet['A1'].options(index =False).value = group# 將數據添加到新增的工作表
workbook.save()
workbook.close()
app.quit()
執行結果如下圖:
成功分成了3個表格。
________________END______________