python读取excel数据写入mysql,有数值为百分数,python读取出来的是小数,能直接读取成百分数吗
例如:
excel数据:1.23%
python读出数据:0.0123
可以用openpyxl库试试
import openpyxl
# 打开Excel文件
wb = openpyxl.load_workbook('example.xlsx')
# 选择工作表
sheet = wb['Sheet1']
# 读取单元格中的百分数,并将其转换为字符串格式
value = sheet.cell(row=1, column=1).value
if value is not None and '%' in value:
value = str(float(value.strip('%')) / 100)
# 将转换后的值写入MySQL数据库
# ...
可以直接获取1.23%,然后根据%截取获取1.23,再除以100就好了,也可以直接根据格式转化
import pandas as pd
df = pd.read_excel('data.xlsx', converters={'column_name': lambda x: float(x.strip('%'))/100})
df['column_name'] = df['column_name'].apply(lambda x: '{:.2%}'.format(x))
需要你获取数据后,写一个方法自行转化就好了
def zhuanhua(s):
if '%' in s:
num=float(s.replace('%','')) / 100
return num
else:
return s
excel_data='1.23%'
result = zhuanhua(excel_data)
print(result)
转换成百分数不就行了