Elementor 页面 #1523

3.1 Python基础循环与判断

原值 = 100000
年限 = 10
残值率 = 0.05 # 残值为原值的5%
残值 = 原值 * 残值率
累计折旧 = 65871.45 # 截止本月初的累计折旧
本月折旧 = 0 # 初始化设置
for i in range(1,7): # 计算接下来6个月的折旧
累计折旧 = 累计折旧 + 本月折旧
#计算每月折旧
本月折旧 =round((原值 /(年限 * 12)),2) # round()函数可以实现四舍五入保留2位小数
#计算固定资产净值(即总剩余待提折旧)
净值 = 原值 – 累计折旧 – 本月折旧 – 残值 # 假设按上期相同口径计提的剩余净值
if 净值 > 0:
本月折旧 = 本月折旧
else:
本月折旧 = round(原值 – 累计折旧 – 残值,2) # 最后1期,倒挤,保留2位小数
print(f”第{i}个月应计提的折旧为:”,str(本月折旧) + “元”)

3.2 Python财务数据处理

# 导入所需库
import pandas as pd
# 读取”摘要明细.csv”
df = pd.read_csv(“摘要明细.csv”)
# 截取数据
df_shujv = df[[“摘要”,”一级科目代码”]]
# 筛选数据
df_6001 = df_shujv[df_shujv[“一级科目代码”] == 6001]
# 计算统计出数据中非空的数据
result = df_6001.count()
# 将结果打印输出
print(result)

3.3 Python财务数据爬取

这是示例文本,单击 “编辑” 按钮更改此文本。# 导入pandas

import pandas as pd

# 导入requests

import requests

# 导入json

import json

# 设置爬取报表起始年份

startYear = “2022”

# 设置爬取报表结束年份

endYear = “2022”

# 设置爬取报表股票代码

stockCode = “002594”

# 输入爬取报表股票简称

stockAbbreviation = “比亚迪”

# 资产负债表

url1 = “http://bdc.api.netinnet.cn/nin_bd_center/xbrl/queryStatementBalance?stockCode=”+stockCode+”&startYear=”+startYear+”&endYear=”+endYear

# 现金流量表

url2 = “http://bdc.api.netinnet.cn/nin_bd_center/xbrl/queryStatementCashflow?stockCode=”+stockCode+”&startYear=”+startYear+”&endYear=”+endYear

# 利润表

url3 = “http://bdc.api.netinnet.cn/nin_bd_center/xbrl/queryStatementProfit?stockCode=”+stockCode+”&startYear=”+startYear+”&endYear=”+endYear

# 开始获取网页信息”

resp = requests.get(url = url2, headers = {“User-Agent”: “Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/99.0.4844.82 Safari/537.36”},).text

# json解析

js = json.loads(resp)

# 将报表以DataFrame存储

df = pd.DataFrame(js[“data”][“xbrlData”]).iloc[:,:]

# 重命名head列

newColumn = [“报表项目”]

df.rename(columns = {“head”: “报表项目”}, inplace = True)

for i in range(int(endYear),int(startYear)-1,-1):

    df[str(i)] = pd.Series(df[str(i)], dtype=”str”)

    df.rename(columns = {‘%s’%(i): str(i)+”年”}, inplace = True)

    newColumn.append(str(i)+”年”)

df = df[newColumn] 

# 显示数据

print(stockCode+”的现金流量表为:”)

print(df.loc[0:25])

3.4 Python财务数据清洗

# 导入相应库
import pandas as pd
# 读取文件
df = pd.read_csv(“明细表.csv”)
# 删除重复数据所在的行
df = df.drop_duplicates()
# 删除缺失值所在行
df = df.dropna()
# 筛选出相应数据并计算合计
df = df[df[“末级科目名称”] == “配件辅料”]
# 打印输出前五行
print(df.head(5))
print(“—————————————————————————————————————————”)
# 计算数量合计
total = df[“数量”].sum()
# 将结果打印输出
print(total)