phppython混合开发_如何让python嵌入html实现类似php的快速开发,十分有价值
1.在一个文件夹名为www.html3.com的web项目来实现,首先到nginx的配置文件nginx.conf做如下配置
python和html混合编写的文件,我以文件后缀为.phtml,通过服务器配置让它重定向到 /rewrite/
2.进去项目目录下的static/html/ 编写一个1.phtml 内容如下(内容是随便写的,只是为了测试)
#define a variable
str_var = "hello world"
############# divide ################
import time
if True:
str_var2 = str(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
else:
str_var2 = "nothing"
%>
phtml
start
I say:
I say:
end
注意:博主本人的想法是在html文档前放一对分隔符且只是一个,专门用于处理数据与逻辑,而后面的分隔符也就是嵌入到html文档内的那些分隔符,里面只放置一个变量名,用于输出变量值,因为时间有限,只是简简单单实现,请谅解!
PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取
note.youdao.com/noteshare?id=2dce86d0c2588ae7c0a88bee34324d76
3.我该项目是flask项目(核心思想与web框架无关),然后写个路由,内容如下
@app.route('/rewrite/')
def rewite():
url_path = str(request.environ['REQUEST_URI'])[1:]
if os.path.exists(url_path):
oFile = open(url_path)
text = oFile.read()
pattern = re.compile('')
result = pattern.findall(text)
content = []
flag = 0
while flag < len(result):
if flag == 0:
exec(result[flag].strip())
content.append('')
else:
content.append(locals()[result[flag].strip()])
flag += 1
flag = 0
def mysub(matched):
nonlocal flag
flag2 = flag
flag += 1
return content[flag2]
res = re.sub('',mysub,text)
return res
else:
return "404 not found"
代码解释:
1.如果有看不懂request.environ['REQUEST_URI'],可以看一下博主之前写的一篇文章“nginx的rewrite ,如何在flask项目中获取重写前的url”
2.result变量用于存放匹配到分隔符内的字符串,是列表
3.content变量用于存放result列表每个元素解释后的值,而content[0]放空字符串(因为没有输出,result[0]只用于通过exec( )来执行字符串语句)
4.测试访问http://ww.html3.com/static/html/1.phtml
假设访问不存在的2.phtml
附:
通配符. 匹配除换行符\n之外的任何单字符
如果要匹配包括换行符的所有字符就不要用(.),用([\s\S])
关于如何解决贪婪匹配,加?
phppython混合开发_如何让python嵌入html实现类似php的快速开发,十分有价值相关推荐
- python开发板卡驱动开发_一款能让你发挥无限创意的MicroPython开发板—TPYBoard开发板测...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 今天 静电袋包装,打开袋子简单明了:TPYBoard开发板一块.跳线帽一个.数据线一条.说明书一份.通过数据线将开发板与电脑连接就可以DIY各种你想要的P ...
- 零基础python嵌入式开发_零基础Python入门教程
第01课 python基础之python介绍 课时1python的职业方向和工资 试听 00 : 15 : 54 开始学习 课时2环境的安装 试听 00 : 14 : 16 开始学习 课时3基础班课程 ...
- python桌面程序开发_程序员之路:python3+PyQt5+pycharm桌面GUI开发
先看效果: 图 1 没错,学过C#的同学应该很熟悉这个界面,按钮风格和界面风格很相似,万万没想到,python也可以做出这样的界面,简直了!(图 1) 正文开始 一.安装python 为啥要说这个,我 ...
- python如何进行web开发_如何用Python做Web开发
匿名用户 1级 2018-06-08 回答 1.python入门 推荐老齐<从零开始学python>,<python简明教程>,这两本书很适合小白入门(像我一样长期徘徊在编程门 ...
- 什么是python全栈开发_什么是python全栈
全栈即指的是全栈工程师,指掌握多种技能,并能利用多种技能独立完成产品的人.就是与这项技能有关的都会,都能够独立的完成. 全栈只是个概念,也分很多种类.真正的全栈工程师涵盖了web开发.DBA .爬虫 ...
- python做网站开发_如何用Python做网站开发
很多人想要用Python做网站开发,但是又不知从何入手,接下来小编介绍用Python做网站开发需要学习哪些知识,又应该以什么样的顺序来学. 第一步:HTML(超文本标记语言)是网页的核心,学好HTML ...
- 如何学好python web开发_如何学好python web开发
1.前言 我在没有接触互联网这个行业的时候,就一直好奇网站是怎么构建的.我现在虽然从事互联网相关的工作,但是也一直没有接触过Web开发之类的东西,不过兴趣终归还是要有的,还要自己动手去实践的.Web开 ...
- 易语言和python混合编程_易语言python交互源码,不需要把易语言编译成静态库
.版本 2 .支持库 spec .子程序 _启动子程序, 整数型, , 本子程序在程序启动后最先执行 .局部变量 mothod, PyMethodDef .局部变量 创建结果, 整数型 .局部变量 错 ...
- python fpga开发_惊人!Python+FPGA 实现FPGA开发大提速?!!
在论文中,各位教授还对PYNQ开发环境的优缺点进行了阐述: 首先来说,PYNQ应用开发框架是一个开源的开发环境,提供了标准的可以约束芯片I/O引脚的"Overlay"比特流,同时, ...
最新文章
- 在动作观察,运动想象和站立和坐姿执行过程中解码脑电节律
- 发展受阻第一至四季/全集Arrested迅雷下载
- css+图标偏移,css background-position 偏移的问题
- 如何在WebLogic Server中创建MySQL数据源
- 867. 分解质因数
- 夏普 DN7C3A006 PM2.5 传感器测量步骤及存在问题
- VS code gopls requires a module at the root of your workspace
- 淘淘商城规格参数列表显示
- Linux下载Java包,Linux环境Java包的安装和环境配置
- 为什么html字体之间有间隔,css字体间隔怎么调整?css文字间隔的调整方法
- Context-Aware Patch Generation for Better Automated Program Repair -上下文感知补丁生成更好的自动化程序修复
- Guava中这些Map的骚操作,让我的代码量减少了50%
- 苏云技术导航网站源码 附后台
- 华硕h410m-f主板检测不到硬盘启动选项?
- go 注册登录 mysql_golang后台 实现用户登录注册
- 快对作业超级计算机,快对作业2020
- 方便好用的软件这里就有四款
- 这是二哈和柯基生下的宝宝?哈撒给,简直太可爱了...
- 用Python基本语法实现一个购物车功能
- OracleERP表结构--PO模块(1)
热门文章
- 赫夫曼编码长度计算问题?
- c++模板显示实例化,显示具体化,隐式实例化
- Let‘s Fluent:更顺滑的MyBatis
- 爱奇艺体育:体验Serverless极致扩缩容,资源利用率提升40%
- MSSQL实践-数据库备份加密
- pandas指南:做更高效的数据科学家
- 推特惊爆史诗级漏洞,App 恶意窃取用户隐私,云端安全路向何方?
- 一行Python代码能干什么?有意思!
- Hadoop精华问答 | hadoop能干什么?
- Jonathan Bryce说:OpenStack属于全世界,并不属于一个公司,也不会属于一个国家……...