当前位置:首页 > 每日看点

Python真的有大众说的那么好吗?

卡卷网2年前 (2025-01-17)每日看点307

运维人,python只是入门水平吧。

有天业务部门让我帮忙,需求是将一个表格里面的数千条数据按行分别导出为PDF。如果我自己一条条干,干一个礼拜都干不完。

那当然是自己想办法解决喽,查了下,python正好内嵌了工具类能处理我的需求,于是乎找到文档自己开写。

由于不熟练,连循环咋写都得查文档,不过还好大学还剩点编程底子,饶是如此,几行代码也写了一个上午。如下,有类似需求的朋友可以直接在我的基础上改一改。

xlrd类不能直接将Excel表格数据转换成PDF,所以只能先把每行数据提取出来创建成Word保存,再把word文件转换成PDF。

# _*_coding : utf-8 # @Time : 19:56 # @Author : daton # @File : {NAME} # @Project : {PROJECT_NAME} import xlrd import docx from docx.oxml.ns import qn #设置全局字体 workbook = xlrd.open_workbook(filename=r'D:\huaan.xls') #打开表格''内是文件路径,注意标点符号必须是全英文表格格式必须是.xls table = workbook.sheet_by_name(sheet_name='Sheet1')#读取全部数据 rows = table.nrows #行 path='D:\jjfl' #循环获取每行的数据 #for row in range(rows): row=0 while row<rows: doc = docx.Document() jjdm = int(table.cell_value(row,0)) doc.save(r'D:\jjfl\{}.docx'.format(jjdm)) #文件保存的位置 row+=1 row1=0 while row1 < rows: jjdm = int(table.cell_value(row1, 0)) jjmc = table.cell_value(row1, 1) tp = table.cell_type(row1, 2) jjfl = float(table.cell_value(row1, 2))#数据保留为浮点数据。 a = round(jjfl, 3) file=docx.Document(r'D:\jjfl\{}.docx'.format(jjdm)) doc=docx.Document() doc.styles['Normal'].font.name = u'宋体' doc.styles['Normal']._element.rPr.rFonts.set(qn('w:eastAsia'), u'宋体') doc.add_paragraph('尊敬的投资者:\n\t您购买的{}基金,产品代码{},客户维护费率为{}%,敬请周知。'.format(jjmc,jjdm,a)) doc.save(r'D:\jjfl\{}.docx'.format(jjdm)) row1 += 1 import os from docx2pdf import convert # 目录地址,将'/'替换成需要转换的目录地址就行 file_path = r'D:\jjfl' # 转换word->pdf # 查找当前目录下的全部word文件 for dirpath, dirnames, filenames in os.walk(file_path): for file in filenames: fullpath = os.path.join(dirpath, file) print('fullpath:"' + fullpath) # convert("input.docx", "output.pdf") convert(fullpath, f"{fullpath}.pdf") # 转换成pdf文件,但文件名是.docx.pdf,需要重新修改文件名 # 修改文件名 for dirpath, dirnames, filenames in os.walk(file_path): for fullpath in filenames: if '.pdf' in fullpath: fullpath_after = os.path.splitext(fullpath)[0] fullpath_after = os.path.splitext(fullpath_after)[0] fullpath_after = fullpath_after + '.pdf' fullpath_after = os.path.join(dirpath + '\\' + fullpath_after) fullpath = os.path.join(dirpath, fullpath) os.rename(fullpath, fullpath_after)

如果我精通的话,可能几分钟就写好了,实在是才疏学浅。python好不好我没资格评价,但是相比于java,c++等,在写一些脚本的时候,我更愿意使用python,更简洁,逻辑更严谨。程序无非就是懒成精了,把大量重复的工作交给电脑,还不出错,何乐而不为?

扫描二维码推送至手机访问。

版权声明:本文由卡卷网发布,如需转载请注明出处。

本文链接:https://www.kajuan.net/ttnews/2025/01/9709.html

分享给朋友:

相关文章

AI普及:让人类更聪明还是更愚蠢?

AI普及:让人类更聪明还是更愚蠢?

人工智能真的会替代人类吗?如果你询问人工智能这个问题,它通常会用“情感模块”作为标准答案来回复你——人工智能因为缺失情感模块,所以暂时无法替代人类的情感、创造力和想象力。是否这意味着,人工智能一旦拥有了情感模块,就会超越正态曲线最中段的大部…

2024,java开发,已经炸了吗?

炸的透透的了,坐标南京。 一月底,一个好哥们,双休朝九晚六不加班18K,被裁。 入职不到两年,算是工资和年终奖才赔了6.5W左右。 上周五新公司入职,周六开始加班。现在每周134加班到晚上八点,好像薪资还不如以前高。三月上旬,另一个好哥们,…

WordPress建站同时面向B端和C端,有什么好的解决方案?

这个很容易实现呀,只不过需要自己开发,整体用权限管理就可以实现了,B端和C端是不同用户权限,C端能看到的菜单入口和B端不一样就行了。技术层面实现没问题的,只不过就是看你们的技术能力和投入了 ,这样的需求应该没有现成的开源插件。只能找人定制开…

国外有没有像国内闲鱼这样的二手平台?

国外有没有像国内闲鱼这样的二手平台?

在当今全球市场,二手电商正迅速崛起,成为全球消费者购物的热门选择。很多国外的消费者,特别是那些 注重可持续和环保 的人群,包括富裕的消费者都经常购买二手商品。对电商卖家来说,进军二手平台是个很好的创收机会。尤其是在美国, 美国二手物品交易平…

我怎么也无法理解网络游戏为什么会有外挂?

我怎么也无法理解网络游戏为什么会有外挂?

因为你把服务器想象成了无所不能的上帝;但在我们程序猿眼里,服务器不过是一个黑大傻粗的计算器。 比如说,我们在某个位置打开一个宝箱: 那么,你觉得,程序背后应该做了些什么呢? 一、天真的玩法天真的程序猿会觉得,啊,这事简单!我就告诉服…

电商专供到底能不能买,除了渠道差异,还有什么差别?

电商专供到底能不能买,除了渠道差异,还有什么差别?

大家应该都经历过,买回来的包装,上面赫然写着四个大字「电商专供」! 然后心里一咯噔,开始各种对比,结果研究了半天,有的能发现区别,有的好像确实也没什么差异。 鉴于大家都有类似经历,本期我们就来聊聊电商专供跟实体之间的关系,顺便告诉大家,…

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。