Python 技术篇-python生成html源码功能实现演示,html代码自动生成技巧。列表生成式的灵活应用。
时间:2022-07-25
本文章向大家介绍Python 技术篇-python生成html源码功能实现演示,html代码自动生成技巧。列表生成式的灵活应用。,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
python之所以受欢迎就是因为它简单易用,而且很强大! python的列表生成式可以方便的生成我们想要的列表类型的数据,重点是我们想要的。
本篇文章就来为大家演示表单类型的html代码是如何生成的,希望大家通过引导可以有更好的想法,做出更有创意的脚本出来,分享给大家!
# -*- coding: utf-8 -*-
# dict类型数据
d = { '乔丹': 2.1, '姚明': 2.3, '科比': 1.9 }
# 转化方法
# 字符串可以通过 % 进行格式化,用指定的参数替代 %s。
def switch(a, b, c):
return '<tr><td>%s</td><td>%s</td><td>%s</td></tr>' % (c, a, b)
# 两个循环每个人名遍历3次,每次序号1,2,3
html_code = [switch(a, b, c) for a,b in d.items() for c in range(1, 4) ]
# 保存为html文件
f=open("D:/html_code.html","w")
f.write('<table border="1" style="color:red">')
f.write('<tr><th>序号</th><th>球星</th><th>身高</th><tr>')
# 字符串的join()方法可以把一个 list 拼接成一个字符串。
f.write('n'.join(html_code))
f.write('</table>')
f.close()
生成的html文件内容如下,浏览器打开就能看出效果了
<table border="1" style="color:red"><tr><th>序号</th><th>球星</th><th>身高</th><tr><tr><td>1</td><td>乔丹</td><td>2.1</td></tr>
<tr><td>2</td><td>乔丹</td><td>2.1</td></tr>
<tr><td>3</td><td>乔丹</td><td>2.1</td></tr>
<tr><td>1</td><td>姚明</td><td>2.3</td></tr>
<tr><td>2</td><td>姚明</td><td>2.3</td></tr>
<tr><td>3</td><td>姚明</td><td>2.3</td></tr>
<tr><td>1</td><td>科比</td><td>1.9</td></tr>
<tr><td>2</td><td>科比</td><td>1.9</td></tr>
<tr><td>3</td><td>科比</td><td>1.9</td></tr></table>
运行效果如下:
下面来讲一下列表生成式
[switch(a, b, c) for a,b in d.items() for c in range(1, 4) ]
switch()是方法,把值传入,调用方法,生成代码; for循环可以嵌套多层,第一个循环遍历dict类型数据,第二个循环遍历包含1,2,3的列表,后面的循环嵌套在前面的循环里面; 后面还能加if语句来过滤呢,比如if c>2,表示c>2时取到的值才会生成列表;
[switch(a, b, c) for a,b in d.items() for c in range(1, 4) if c>2]
给大家看下改进的效果
- Oracle 12c PDB的数据备份恢复(r12笔记第84天)
- MySQL和Oracle中唯一性索引的差别(r12笔记第83天)
- 如何用JavaScript进行数组去重
- Oracle 12.1升级到12.2的两种方法(r12笔记第92天)
- Oracle数据库重启后密码失效的问题(r12笔记第91天)
- Oracle和MySQL竟然可以这么写这样的SQL?(r12笔记第99天)
- Golang语言社区--了解C++ 用libcurl库进行http通讯网络编程
- Golang语言-- 小技巧
- MySQL Shell的简单介绍(r12笔记第95天)
- MYSQL索引条件下推的简单测试
- 教你如何用AST语法树对代码“动手脚”
- Oracle和MySQL中短小精悍的SQL
- Oracle 12cR2中的ADG会话保留特性
- IP地址定位区间的问题分析
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 隐藏MySQL InnoDB Cluster / ReplicaSet实例
- MySQL8.0.21——错误日志中的组复制系统消息
- 【一】、搭建Hadoop环境----本地、伪分布式
- 在组复制中指定恢复IP地址
- START GROUP_REPLICATION可以将恢复凭据作为参数
- MySQL Shell转储和加载第1部分:演示!
- MySQL Shell转储和加载第2部分:基准测试
- MySQL Shell转储和加载第3部分:加载转储
- Hadoop【单机安装-测试程序WordCount】
- MySQL Shell转储和加载第4部分:转储实例和模式
- 【创建模式】--工厂模式
- 【创建模式】--Singleton
- Mapreduce 历史服务 配置启动查看
- Yarn 的日志聚集功能配置使用
- HDFS 的垃圾回收配置