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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python有趣的工具_python好玩的小工具(正在create中)

發布時間:2025/3/15 python 15 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python有趣的工具_python好玩的小工具(正在create中) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

思路:(可以不用key value來做,本次也沒用到)

0)先創建new.xlsx 復制test.xlsx的所有內容,放到new.xlsx里 ,并 以key ,value的形式存base.xlsx數據( C列是key B列是value ) OK

1)在new.xlsx中:判斷這個sheet頁是否為空 不為空可,走2),為空跳過不走 (省略了,不會讓它是空的!!!)

2)判斷當前行是否為空 不為空可,走3),為空跳過不走

3) 判斷當前行是否有 "GET/ 或者 "POST/ ,有 走4) 沒有(不做處理)

4)定位是當前行: 提取 "GET/ 或者 "POST/ 后的字段,提取到空格之前 ,并輸出到控制臺上

5)定位是當前行:提取后與base.xlsx 內的C列進行比較(遍歷)(以key ,value的形式存base.xlsx數據 ,和每一個key進行比較,相同則輸出對應的value值)

相同:把取得的value 復制到new.xlsx 的當前行的A列

沒有相同的:把當前行變成紅色,并跳出本次循環 ,到第 2) 步

忽略以下三個提取后的字段:

logout

Switchnavi

Switchnavimain

&&list[index+1].lower() != 'logout'.lower() && list[index+1].lower() != 'Switchnavi'.lower() && list[index+1].lower() != 'Switchnavimain'.lower() 沒寫

三個表:

test.xlsx (數據源表)

base.xlsx (基礎表)

new.xlsx (最終成果物表,python自己創建)

2.py文件 :

import openpyxl

import shelve

import re

#準備工作1:-------------------------------

filepath = 'new_excel1.xlsx'

wb = openpyxl.Workbook()

#默認表sheet1

ws1 = wb.active

#更改表名

ws1.title = '調査結果'

wb.save(filepath)

#ws1.cell(row=1,column=1,value='sheet1表1行1列的值').value

#復制test.xls的所有內容,放到new_excel1.xlsx里

from openpyxl import load_workbook

test_wb = load_workbook('test.xlsx')

new_excel1_wb = load_workbook('new_excel1.xlsx')

test_sheet =test_wb.get_sheet_by_name('調査結果')

new_excel1_sheet = new_excel1_wb.get_sheet_by_name('調査結果')

for i in range(1, test_sheet.max_row+1):

for j in range(1, test_sheet.max_column+1):

new_excel1_sheet.cell(row=i, column=j).value = test_sheet.cell(row=i, column=j).value

test_wb.save('test.xlsx')

new_excel1_wb.save('new_excel1.xlsx')

#并 以key ,value的形式存base.xls數據( C列是key B列是value )3.py 執行完后,發現多了test.db文件

#準備工作2:-------------------------------

db_test=shelve.open('test.db')

from openpyxl import load_workbook

base_wb = load_workbook('base.xlsx')

base_sheet =base_wb.get_sheet_by_name('123')

for i in range(2, base_sheet .max_row+1):

db_test[base_sheet.cell(row=i, column=3).value]=[base_sheet.cell(row=i, column=2).value]

print(base_sheet.cell(row=i, column=3).value,db_test[base_sheet.cell(row=i, column=3).value])

#1)在new.xlsx中:判斷這個sheet頁是否為空 不為空可,走2),為空跳過不走 (省略了,不會讓它是空的!!!)

#2)判斷當前行是否為空 不為空可,走3),為空跳過不走

def issheetEmpty() :

from openpyxl import load_workbook

new_excel1_wb = load_workbook('new_excel1.xlsx')

new_excel1_sheet = new_excel1_wb.get_sheet_by_name('調査結果')

for i in range(1, new_excel1_sheet.max_row+1):

#i=i.encode()

#if new_excel1_sheet.cell(row=i, column=2).value.strip() == "":

#pass

#for line, item in enumerate(new_excel1_sheet.readlines()):

#if line.strip() == "":

#pass

#else:

#3) 判斷當前行是否有 "GET/ 或者 "POST/ ,有 走4) 沒有(不做處理)

#根據空格分字段,判斷當前行是否有 "GET/ 或者 "POST/

#list = new_excel1_sheet.cell(row=i, column=2).value.split()

from openpyxl import load_workbook

new_excel1_wb = load_workbook('new_excel1.xlsx')

new_excel1_sheet = new_excel1_wb.get_sheet_by_name('調査結果')

a=str(new_excel1_sheet.cell(row=i, column=2).value)

list = re.split(" ",a)

#list=list.encode()

#print(list)

#for i in list:

#if(i == '"GET/' or i == '"POST/') :

#print("yes is %s" %i)

#4)定位是當前行: 提取 "GET/ 或者 "POST/ 后的字段,提取到空格之前 ,并輸出到控制臺上

for index in range( len(list) ):

#index=index.encode()

if(list[index] == '"GET/' or list[index] == '"POST/') :

#print(list[index+1])

#5)定位是當前行:提取后與base.xls 內的C列進行比較(遍歷)(以key ,value的形式存base.xls數據 ,和每一個key進行比較,相同則輸出對應的value值)

from openpyxl import load_workbook

base_wb = load_workbook('base.xlsx')

base_sheet =base_wb.get_sheet_by_name('123')

for j in range(2, base_sheet.max_row+1):

#j=j.encode()

if(list[index+1].lower() == base_sheet.cell(row=j, column=3).value.lower()) :

new_excel1_sheet.cell(row=i, column=1).value=base_sheet.cell(row=j, column=2).value

new_excel1_wb.save('new_excel1.xlsx')

else:

continue

#else:

#new_excel1_sheet.cell(row=item).add_format({'bold': True, 'color': 'red'})

issheetEmpty()

print("end-------------------------------------------")

運行效果:

總結

以上是生活随笔為你收集整理的python有趣的工具_python好玩的小工具(正在create中)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。