程序员文章、书籍推荐和程序员创业信息与资源分享平台

网站首页 > 技术文章 正文

Python自动化-Excel:pandas之填充

hfteth 2025-05-15 18:04:53 技术文章 8 ℃

Excel:自动填充

skiprows=行数,跳过几行

usecols=“区域”,和execl中一样,就是一个列的区域

数据at的用法:获取某个位置的值,如第0行,第a列的值,即index=0, columns='a'

变量名=数据.at[0,'a']

datetime.timedelta:表示两个date, time, datetime实例之间的时间间隔

import pandas as pd
import datetime as dt
# 读取excel
sh1 = pd.read_excel("05自动填充.xlsx",skiprows=8,usecols='F:I',dtype={'序号':str,'性别':str,'日期':str})
print(sh1)
date1 = dt.date(2025,5,6)
for i in sh1.index:
    # 填充序号,从1开始
    sh1['序号'].at[i] = i + 1
    # 填充性别,偶数行:男,奇数行:女
    sh1['性别'].at[i] = '男' if i%2 == 0 else '女'
    # 填充日期,天数+1
    sh1['日期'].at[i] = date1 + dt.timedelta(days=i)
print(sh1)
# 将“序号”列设置为索引列
sh1.set_index('序号',inplace=True)
print(sh1)
# 写入excel(新的文件)
sh1.to_excel("05自动填充-new.xlsx")

csv:自动填充

import pandas as pd
import datetime as dt
# 读取csv文件(逗号分隔)
sh1 = pd.read_csv("05自动填充.csv",dtype={'序号':str,'性别':str,'日期':str})
print(sh1)
date1 = dt.date(2025,5,6)
for i in sh1.index:
    # 填充序号,从1开始
    sh1['序号'].at[i] = i + 1
    # 填充性别,偶数行:男,奇数行:女
    sh1['性别'].at[i] = '男' if i%2 == 0 else '女'
    # 填充日期,天数+1
    sh1['日期'].at[i] = date1 + dt.timedelta(days=i)
print(sh1)
# 将“序号”列设置为索引列
sh1.set_index('序号',inplace=True)
print(sh1)
# 写入csv(新的文件)
sh1.to_csv("05自动填充-new.csv")

寻常的数据操作还是在excel中直接操作吧(或者用vba),python适用于大数据

参考资料:

B站:孙兴华《中文讲Python从入门到办公自动化》

Tags:

最近发表
标签列表