美文网首页读书
iOS多语言开发之python提取excel文件里面内容(1)

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

作者: 晴朗Nic | 来源:发表于2022-07-26 15:21 被阅读0次

    在开发多语言的时候会遇到词库直接会给一个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)

        本文链接:https://www.haomeiwen.com/subject/iryoirtx.html