iOS多语言开发之python提取excel文件里面内容(1)

在开发多语言的时候会遇到词库直接会给一个Excel文件里面,要把里面excel内容提取处理转成.string才能直接使用。

编写python建议用:Sublime Text,是一个文本编辑器(收费软件,可以无限期试用),同时也是一个先进的代码编辑器。

我安装是python3是命令行是使用pip3, python命令行是使用pip。

1、在Mac系统安装xlrd,如果安装xlrd的版本是2.0.0要移除因为2.0.0不能执行xlrd.open_workbook这个函数,要用版本为1.2.0才可以,移除代码直接终端运行:

pip3 uninstall xlrd

2、再安装低版本xlrd,直接终端运行:

pip3 install xlrd==1.2.0

3、查看 xlrd版本终端运行:pip3 list,如图所示是xlrd1.2.0:

QQ20220726-151405.png

3、下面是python的处理excel核心文件:

#导入处理excel的库
import xlrd
import os

#要处理的Excel文件
fileurS = '/Users/iphone15/Downloads/OnlyFileHandle/InputFile/HandleReadyFile.xlsx'
#输出处理文件
outWFile = '/Users/iphone15/Downloads/OnlyFileHandle/OutFile/OutPut.txt'
# 打开Excel文件
workbook = xlrd.open_workbook(fileurS)
# 获取全部表的名字
sheetName = workbook.sheet_names()
# 获取全部表的内容
sheetObj = workbook.sheets();
# 获取第二张表内容
iosObjSheet = workbook.sheets()[0];
# 获取第二张表多少行
num_rows = iosObjSheet.nrows;
# 获取第二章表多少列
num_cols = iosObjSheet.ncols;
# 用来装全部内容
fileContent = "";
# 遍历第二张表个体内容
for curr_row in range(num_rows):
    inPutString = ""
    oneNamContent = ""
    twoNameContent = ""
    for curr_col in range(num_cols):
        cellVaule = iosObjSheet.cell_value(curr_row,curr_col);
        if (curr_col == 0) | (curr_col == 2): #只装第一和第二列表元素
            cellVaule = str(cellVaule);
            cellVaule = cellVaule.replace('\"','\\\"');#把" 替换成转义\"
            if curr_col == 0:
                oneNamContent = cellVaule;
                inPutString = ("\"%s\"" %(cellVaule));
            if curr_col == 2:
                twoNameContent = cellVaule;
                inPutString = ("%s = \"%s\";\n" %(inPutString,cellVaule));
    if (len(oneNamContent) > 0) & (len(twoNameContent) > 0):#只有满足不为空才装
        fileContent = fileContent + inPutString;

#把获取的内容写入文件
with open(outWFile,'w+', encoding='utf-8') as file:
            file.write(fileContent);        

4、把代码装进新创建.py文件,然后设置好要处理文件的路径和输出文件的路劲,输出文件为要的结果,注意我这里安装是python3所以直接用python3,python直接用python终端运行:

python3  新创建.py

5、GitHub上面的工具代码:工具代码

你可能感兴趣的:(iOS多语言开发之python提取excel文件里面内容(1))