- Python 的元组和列表的区别是什么?
海姐软件测试
职场和发展笔记经验分享面试其他
以下是Python中元组(tuple)和列表(list)的主要区别:1.语法表示:元组使用小括号()来定义,例如(1,2,3);列表使用方括号[]来定义,例如[1,2,3]。2.可变性:列表是可变的,即可以对其元素进行添加、删除、修改操作;而元组是不可变的,一旦创建,其元素的值就不能被修改。3.内存占用:通常情况下,元组的内存占用比列表小,因为元组的不可变性使其在某些情况下更易于优化。4.速度:由
- 使用pyinstaller对gradio和chromadb进行打包
顾德拉科
python
解决gradio和chromadb的打包问题背景问题gradio和gradio_client模块chromadb模块解决背景python项目里包含了gradio和chromadb模块,使用pyinstaller后总有模块找不到,这里分享一个办法一招解决。问题gradio和gradio_client模块gradio在被打进exe后执行报错:Nosuchfileordirectory:gradio_c
- Python Qt6快速入门-模型视图(ModelView)
视觉与物联智能
Python编程实例ui编程语言pythonpyqt6qt6
模型视图(ModelView)文章目录模型视图(ModelView)1、MVC模式介绍2、Qt的MVC模式类介绍3、视图/模型应用实例3.1UI设计3.2模型3.3逻辑功能实现3.4数据持久化Qt包含一组项目视图类,它们使用模型/视图体系结构来管理数据之间的关系及其呈现给用户的方式。这种体系结构引入的功能分离为开发人员提供了更大的灵活性来自定义项目的表示,并提供了一个标准模型接口以允许广泛的数据源
- ubuntu指定版本安装python
丐哥说
ubuntupythonlinux运维服务器
Python,安装相关视频讲解:python的or运算赋值用法用python编程Excel有没有用处?011_编程到底好玩在哪?查看python文件_输出py文件_cat_运行python文件_shel安装指定版本的Python在Ubuntu上Python是一种广泛使用的高级编程语言,具有简单易读的语法和强大的功能,因此受到了众多开发者的喜爱。在Ubuntu系统上安装Python是一项常见的操作,
- python debug怎么用_python开启debug模式的方法
weixin_39621185
pythondebug怎么用
python开启debug模式的代码如下所示:importrequestssession=requests.session()importloggingimportrequestslogging.basicConfig(level=logging.DEBUG,format='%(asctime)s%(filename)s[line:%(lineno)d]%(levelname)s%(message
- chatgpt赋能python:PythonUDS:让你的汽车掌握更多技能
qq_43479892
ChatGptchatgpt汽车计算机
PythonUDS:让你的汽车掌握更多技能UDS(UnifiedDiagnosticServices)是一种汽车电子控制单元(ECU)通信协议,用于车辆的诊断和测试。PythonUDS是用Python编程语言实现的UDS客户端和服务器实现,并且为汽车行业提供了许多有用的功能。什么是PythonUDS?PythonUDS是一种用于处理汽车诊断数据和通信的Python库。它可以帮助你轻松地解析和操作U
- 推荐开源宝藏:Python UDS(ISO-14229)神器 —— python-udsoncan
房征劲Kendall
推荐开源宝藏:PythonUDS(ISO-14229)神器——python-udsoncan【下载地址】PythonUDSISO-14229实现python-udsoncan`python-udsoncan`是一个用Python3编写的ISO-14229定义的统一诊断服务(UDS)协议的实现。该项目遵循MIT许可,并在GitHub上发布。通过`python-udsoncan`,开发者可以轻松地在P
- Eclipse Kiso-testing-Python-UDS 教程
井隆榕Star
EclipseKiso-testing-Python-UDS教程kiso-testing-python-udskiso-testing-python-uds项目地址:https://gitcode.com/gh_mirrors/ki/kiso-testing-python-uds1.项目介绍EclipseKiso-testing-Python-UDs是一个集成测试框架,主要用于物联网(IoT)和边
- AI趋势下,软件测试工程师怎么拥抱AI
悠然的笔记本
人工智能
在AI趋势下,软件测试工程师怎么拥抱AI呢?以下是我的一些思考:一、掌握AI基础知识软件测试工程师需要学习机器学习、深度学习、自然语言处理等领域的基本原理和算法。这些基础知识有助于理解AI在测试中的应用基础,从而能够更好地利用AI技术提升测试效率和质量。二、掌握AI相关工具和技术编程语言:学习使用Python等编程语言,这是实现AI应用的常用工具之一。框架:掌握TensorFlow、PyTorch
- Python Web开发中的调试技巧
墨如夜色
python前端数据库Python
调试是软件开发过程中不可或缺的一部分,它帮助开发人员识别和解决代码中的错误和问题。在PythonWeb开发中,调试同样非常重要。本文将介绍一些在PythonWeb开发中常用的调试技巧,并提供相应的源代码示例。使用日志记录日志记录是一种常见的调试技术,可以在代码中插入日志语句,以便跟踪代码的执行情况。Python的内置模块logging提供了强大的日志记录功能。我们可以通过配置日志级别和格式,将关键
- python语言实现电脑重复文件清理程序
若小鱼
pythonpython电脑主机
最近电脑部分盘文件太多,且有些杂乱,想清理一下。考虑到办公电脑涉及到工作文件敏感性,遂决定用python自己写个简单的程序清理一下。代码如下importosimportglobimportfilecmpif__name__=='__main__':#dir_path=r'F:\testsame'dir_path=input("请输入要清理的文件夹路径:")print("开始扫描,请稍候(●'◡'●
- 深入探讨Python中的wxauto库
一休哥助手
pythonpython开发语言
目录引言wxauto简介wxauto的安装与配置wxauto的基础功能窗口操作控件操作键盘与鼠标事件wxauto的高级用法
- 理解Sharpe夏普比率与Python实现
PerpetualLearner
#TalibIndicator#金融研报善用佳软Sharpe夏普Python实现empyricalsharperatio
风险与收益基金绩效评价标准化指标。风险的大小在决定组合的表现上具有基础性的作用;风险调整后的收益率,就是一个可以同时对收益与风险加以考虑的综合指标,以期能够排除风险因素对绩效评估的不利影响。夏普比率的核心思想理性的投资者将选择并持有有效的投资组合,即那些在给定的风险水平下使期望回报最大化的投资组合,或那些在给定期望回报率的水平上使风险最小化的投资组合。William SharpeWilliam\
- python公有属性和私有属性,python 公有属性和私有属性
沧海涂龟
python公有属性和私有属性
十三、python公有属性和私有属性属性:方法:classChinese(Person):nation='China'def__init__(self,name):self.__name=namedefmsg(self):printself.name属性:-类属性-实例属性属性的可见性:-公有属性-私有属性classChinese(Person):nation='China'#类属性def__in
- python爬虫selenium行为链登录12306(滑动验证码滑块)(解决特征识别)(1)
好像要长脑子了1
程序员python爬虫selenium
fromseleniumimportwebdriverfromselenium.webdriver.common.action_chainsimportActionChainsimporttimefromselenium.webdriverimportChromeOptions去除浏览器识别option=ChromeOptions()option.add_experimental_option(‘
- Python公有属性与私有属性
大数据张老师
Python程序设计python开发语言
Python公有属性与私有属性在面向对象编程中,属性是类中用来存储数据的变量。属性根据访问权限的不同,通常可以分为公有属性和私有属性。这两种属性的主要区别在于它们是否能够被外部代码直接访问。理解公有属性与私有属性的区别和使用方式,对于我们在编程中进行数据保护和控制非常重要。公有属性公有属性是可以被外部代码直接访问和修改的属性。它们没有任何访问限制,任何外部代码都可以对其进行读取或更改。这种属性的定
- [关键词特辑]技术栈、开发架构与项目开发
红栈说BSP
团队开发个人开发
概念分析技术栈技术栈指的是完成一个项目或产品所需的一系列技术和工具的集合。它通常包括前端技术、后端技术、数据库、服务器和网络技术等。例如,一个典型的Web应用技术栈可能包括HTML、CSS、JavaScript(前端),Node.js、Python或Java(后端),MySQL或MongoDB(数据库),以及Nginx或Apache(服务器)。前端技术:如HTML、CSS和JavaScript,用
- pytest公共用例如何传入不同的参数
我有一个希哥
pytest
在pytest中,如果你想要为公共用例传入不同的参数,可以使用参数化的方法。以下是几种常见的方法:###方法一:使用`@pytest.mark.parametrize`装饰器`@pytest.mark.parametrize`装饰器允许你为测试函数或fixture传入不同的参数组合。```python#common_utils.pyimportpytest@pytest.fixture(scope
- 使用Python实现量子电路模拟:走进量子计算的世界
Echo_Wish
Python进阶量子计算python开发语言
量子计算作为一项前沿科技,因其能够解决经典计算无法应对的复杂问题而备受关注。通过量子电路模拟,我们可以在经典计算机上模拟量子计算过程,从而进行量子算法的研究和验证。Python作为一种强大且易用的编程语言,为量子电路模拟提供了丰富的库和工具。本文将详细介绍如何使用Python实现量子电路模拟,涵盖环境配置、依赖安装、量子电路构建、模拟与测量和实际应用案例等内容。项目概述本项目旨在使用Python构
- 接口自动化框架篇:框架中的不同请求方式封装!
测试界的吴彦祖
性能测试自动化测试经验分享压力测试测试工具软件测试自动化测试接口测试测试工程师
接口自动化测试是软件测试中不可或缺的一部分,一个好的自动化测试框架可以提高测试效率和质量。本文将从零开始详细规划一个接口自动化测试框架,并着重介绍不同请求方式的封装。一、框架搭建前准备在开始搭建框架之前,需要进行以下准备工作:1.确定测试目标:明确需要测试的接口,包括接口的功能、参数和预期结果等。2.选择编程语言:根据团队的技术栈和项目需求,选择合适的编程语言进行开发,如Python、Java等。
- 什么是 Python 中的模块和包?
Zero_pl
Python基础知识面试题python开发语言
Python中的模块和包在Python中,模块(Module)和包(Package)是组织和管理代码的重要工具,它们用于提高代码的可重用性和可维护性。1.什么是模块(Module)?模块(Module)就是一个Python文件,扩展名为.py,其中包含函数、类和变量,可以被其他Python代码导入和使用。模块的创建任何.py文件都是一个模块。例如,创建一个math_utils.py模块:#math
- AKShare使用方法
光纤搬运工
理财笔记python
什么是AKShareAKShare主要是用于财经研究,解决在财经研究中数据获取的问题。目前的版本主要是基于Python语言,通过调用相关的数据接口来获取数据到本地。原理上,就是在用户本地运行Python代码,实时从网络采集数据到本地,便利与数据分析。由于网络数据采集需要维护的接口众多,且经常由于目标网站变换网页格式需要维护及更新相关接口,所以用户在使用本项目的过程中需要经常更新本项目到最新版本。同
- Pytest测试用例中的mark用法(包含代码示例与使用场景详解)
测试界媛姐
技术分享自动化测试软件测试pytest测试用例
在软件开发中,测试是确保代码质量和功能稳定性的重要环节。Python作为一门流行的编程语言,拥有丰富的测试工具和框架,其中pytest是其中之一。pytest提供了丰富的功能来简化测试用例的编写,其中的mark功能允许我们对测试用例进行标记和分组,以便于选择性运行和管理。本文将深入探讨pytest中mark的用法,包括基本用法、常用用法和实际应用场景,并通过代码示例进行详细解析。一、基本用法1.安
- 接口自动化框架篇:Pytest中的接口请求封装!
自动化测试 老司机
自动化测试测试工程师软件测试pytest自动化测试测试工具selenium软件测试测试工程师接口测试框架
在进行接口自动化测试时,我们需要一个稳定、易用且可扩展的框架来封装接口请求。Pytest是一种非常流行的Python测试框架,它提供了很多方便的功能和插件,可以帮助我们轻松进行接口自动化测试。接口请求封装是框架的核心部分,它负责发送HTTP请求、处理响应和断言结果。以下是一个从0到1的规划,详细介绍如何在Pytest中实现接口请求封装。一、安装Pytest和相关插件首先,我们需要安装Pytest和
- Miniforge的介绍,安装和使用
猎嘤一号
pythonpip
Miniforge是由社区赞助、领导的,并且用GitHub托管所有的包,使用(而且只用)conda-forge作为(默认)下载channel,避开了Anaconda的repository,从而也就避开了被Anaconda追责的问题。Miniforge是一个基于Conda的包管理器和环境管理器,它旨在提供一个更轻量级的替代品来安装和管理Python及其相关库。Miniforge是由Conda-For
- Miniforge安装和管理python
流浪的小新
Pythonpython
简介Miniforge是一个由社区主导的Python环境和包管理工具,它集成了Anaconda的核心工具Conda。Miniforge使用Conda-Forge作为默认的下载渠道,这是一个社区驱动的包仓库,拥有大量的开源软件包可供选择。Miniforge的设计目标是提供一个快速、独立的途径来安装和管理Python的科学计算环境,特别适合那些希望避免Anaconda大型包集合或者对系统资源有限制的用
- Python应用算法之贪心算法理解和实践
大数据追光猿
算法python贪心算法深度学习开发语言人工智能大数据
一、什么是贪心算法?贪心算法(GreedyAlgorithm)是一种简单而高效的算法设计思想,其核心思想是:在每一步选择中,都采取当前状态下最优的选择(即“局部最优解”),希望通过一系列局部最优解最终达到全局最优解。虽然贪心算法并不总是能得到全局最优解,但在许多问题中,它能够快速找到近似最优解。1.贪心算法的优缺点优点高效性:通常时间复杂度较低,适合解决大规模问题。简单性:实现简单,易于理解和应用
- Python网络爬虫技术详解与实践
懒癌弓箭手起源
本文还有配套的精品资源,点击获取简介:随着信息技术的发展,网络数据获取和处理变得至关重要。Python以其强大的库支持和简洁语法,成为开发网络爬虫(Spider)的首选工具。本文详细介绍了Python爬虫的基本原理、常用库、实战技巧,框架构建,数据存储,反爬策略,多线程/异步处理,分布式爬虫等关键技术点,并通过新闻网站、电商平台和社交媒体数据爬取的实战案例,阐述了Python爬虫在数据分析和研究中
- Python编程:创意爱心表白代码集
python
在寻找一种特别的方式来表达你的爱意吗?使用Python编程,你可以创造出独一无二的爱心图案,为你的表白增添一份特别的浪漫。这里为你精选了六种不同风格的爱心表白代码,让你的创意和情感通过代码展现出来。话不多说,咱直接上代码!目录紫色浪漫:心形表白爱意满满:Love2ILoveYou红色热情:心形与文字结合爱的箭矢:一箭穿心效果一箭穿心文字版爱心一行代码:简洁表白紫色浪漫:心形表白1-1导入turtl
- Python网络爬虫技术详解
蓝天资源分享
python爬虫开发语言
Python网络爬虫技术详解引言网络爬虫(WebCrawler),又称网络蜘蛛(WebSpider)或网络机器人(WebRobot),是一种按照一定规则自动抓取互联网信息的程序或脚本。它们通过遍历网页链接,从指定的起始页面开始,逐步抓取页面内容,并存储或分析这些数据。Python,作为一种强大且易于学习的编程语言,凭借其丰富的库和工具,成为了网络爬虫开发的首选语言之一。本文将深入探讨Python网
- java杨辉三角
3213213333332132
java基础
package com.algorithm;
/**
* @Description 杨辉三角
* @author FuJianyong
* 2015-1-22上午10:10:59
*/
public class YangHui {
public static void main(String[] args) {
//初始化二维数组长度
int[][] y
- 《大话重构》之大布局的辛酸历史
白糖_
重构
《大话重构》中提到“大布局你伤不起”,如果企图重构一个陈旧的大型系统是有非常大的风险,重构不是想象中那么简单。我目前所在公司正好对产品做了一次“大布局重构”,下面我就分享这个“大布局”项目经验给大家。
背景
公司专注于企业级管理产品软件,企业有大中小之分,在2000年初公司用JSP/Servlet开发了一套针对中
- 电驴链接在线视频播放源码
dubinwei
源码电驴播放器视频ed2k
本项目是个搜索电驴(ed2k)链接的应用,借助于磁力视频播放器(官网:
http://loveandroid.duapp.com/ 开放平台),可以实现在线播放视频,也可以用迅雷或者其他下载工具下载。
项目源码:
http://git.oschina.net/svo/Emule,动态更新。也可从附件中下载。
项目源码依赖于两个库项目,库项目一链接:
http://git.oschina.
- Javascript中函数的toString()方法
周凡杨
JavaScriptjstoStringfunctionobject
简述
The toString() method returns a string representing the source code of the function.
简译之,Javascript的toString()方法返回一个代表函数源代码的字符串。
句法
function.
- struts处理自定义异常
g21121
struts
很多时候我们会用到自定义异常来表示特定的错误情况,自定义异常比较简单,只要分清是运行时异常还是非运行时异常即可,运行时异常不需要捕获,继承自RuntimeException,是由容器自己抛出,例如空指针异常。
非运行时异常继承自Exception,在抛出后需要捕获,例如文件未找到异常。
此处我们用的是非运行时异常,首先定义一个异常LoginException:
/**
* 类描述:登录相
- Linux中find常见用法示例
510888780
linux
Linux中find常见用法示例
·find path -option [ -print ] [ -exec -ok command ] {} \;
find命令的参数;
- SpringMVC的各种参数绑定方式
Harry642
springMVC绑定表单
1. 基本数据类型(以int为例,其他类似):
Controller代码:
@RequestMapping("saysth.do")
public void test(int count) {
}
表单代码:
<form action="saysth.do" method="post&q
- Java 获取Oracle ROWID
aijuans
javaoracle
A ROWID is an identification tag unique for each row of an Oracle Database table. The ROWID can be thought of as a virtual column, containing the ID for each row.
The oracle.sql.ROWID class i
- java获取方法的参数名
antlove
javajdkparametermethodreflect
reflect.ClassInformationUtil.java
package reflect;
import javassist.ClassPool;
import javassist.CtClass;
import javassist.CtMethod;
import javassist.Modifier;
import javassist.bytecode.CodeAtt
- JAVA正则表达式匹配 查找 替换 提取操作
百合不是茶
java正则表达式替换提取查找
正则表达式的查找;主要是用到String类中的split();
String str;
str.split();方法中传入按照什么规则截取,返回一个String数组
常见的截取规则:
str.split("\\.")按照.来截取
str.
- Java中equals()与hashCode()方法详解
bijian1013
javasetequals()hashCode()
一.equals()方法详解
equals()方法在object类中定义如下:
public boolean equals(Object obj) {
return (this == obj);
}
很明显是对两个对象的地址值进行的比较(即比较引用是否相同)。但是我们知道,String 、Math、I
- 精通Oracle10编程SQL(4)使用SQL语句
bijian1013
oracle数据库plsql
--工资级别表
create table SALGRADE
(
GRADE NUMBER(10),
LOSAL NUMBER(10,2),
HISAL NUMBER(10,2)
)
insert into SALGRADE values(1,0,100);
insert into SALGRADE values(2,100,200);
inser
- 【Nginx二】Nginx作为静态文件HTTP服务器
bit1129
HTTP服务器
Nginx作为静态文件HTTP服务器
在本地系统中创建/data/www目录,存放html文件(包括index.html)
创建/data/images目录,存放imags图片
在主配置文件中添加http指令
http {
server {
listen 80;
server_name
- kafka获得最新partition offset
blackproof
kafkapartitionoffset最新
kafka获得partition下标,需要用到kafka的simpleconsumer
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.
- centos 7安装docker两种方式
ronin47
第一种是采用yum 方式
yum install -y docker
- java-60-在O(1)时间删除链表结点
bylijinnan
java
public class DeleteNode_O1_Time {
/**
* Q 60 在O(1)时间删除链表结点
* 给定链表的头指针和一个结点指针(!!),在O(1)时间删除该结点
*
* Assume the list is:
* head->...->nodeToDelete->mNode->nNode->..
- nginx利用proxy_cache来缓存文件
cfyme
cache
user zhangy users;
worker_processes 10;
error_log /var/vlogs/nginx_error.log crit;
pid /var/vlogs/nginx.pid;
#Specifies the value for ma
- [JWFD开源工作流]JWFD嵌入式语法分析器负号的使用问题
comsci
嵌入式
假如我们需要用JWFD的语法分析模块定义一个带负号的方程式,直接在方程式之前添加负号是不正确的,而必须这样做:
string str01 = "a=3.14;b=2.71;c=0;c-((a*a)+(b*b))"
定义一个0整数c,然后用这个整数c去
- 如何集成支付宝官方文档
dai_lm
android
官方文档下载地址
https://b.alipay.com/order/productDetail.htm?productId=2012120700377310&tabId=4#ps-tabinfo-hash
集成的必要条件
1. 需要有自己的Server接收支付宝的消息
2. 需要先制作app,然后提交支付宝审核,通过后才能集成
调试的时候估计会真的扣款,请注意
- 应该在什么时候使用Hadoop
datamachine
hadoop
原帖地址:http://blog.chinaunix.net/uid-301743-id-3925358.html
存档,某些观点与我不谋而合,过度技术化不可取,且hadoop并非万能。
--------------------------------------------万能的分割线--------------------------------
有人问我,“你在大数据和Hado
- 在GridView中对于有外键的字段使用关联模型进行搜索和排序
dcj3sjt126com
yii
在GridView中使用关联模型进行搜索和排序
首先我们有两个模型它们直接有关联:
class Author extends CActiveRecord {
...
}
class Post extends CActiveRecord {
...
function relations() {
return array(
'
- 使用NSString 的格式化大全
dcj3sjt126com
Objective-C
格式定义The format specifiers supported by the NSString formatting methods and CFString formatting functions follow the IEEE printf specification; the specifiers are summarized in Table 1. Note that you c
- 使用activeX插件对象object滚动有重影
蕃薯耀
activeX插件滚动有重影
使用activeX插件对象object滚动有重影 <object style="width:0;" id="abc" classid="CLSID:D3E3970F-2927-9680-BBB4-5D0889909DF6" codebase="activex/OAX339.CAB#
- SpringMVC4零配置
hanqunfeng
springmvc4
基于Servlet3.0规范和SpringMVC4注解式配置方式,实现零xml配置,弄了个小demo,供交流讨论。
项目说明如下:
1.db.sql是项目中用到的表,数据库使用的是oracle11g
2.该项目使用mvn进行管理,私服为自搭建nexus,项目只用到一个第三方 jar,就是oracle的驱动;
3.默认项目为零配置启动,如果需要更改启动方式,请
- 《开源框架那点事儿16》:缓存相关代码的演变
j2eetop
开源框架
问题引入
上次我参与某个大型项目的优化工作,由于系统要求有比较高的TPS,因此就免不了要使用缓冲。
该项目中用的缓冲比较多,有MemCache,有Redis,有的还需要提供二级缓冲,也就是说应用服务器这层也可以设置一些缓冲。
当然去看相关实现代代码的时候,大致是下面的样子。
[java]
view plain
copy
print
?
public vo
- AngularJS浅析
kvhur
JavaScript
概念
AngularJS is a structural framework for dynamic web apps.
了解更多详情请见原文链接:http://www.gbtags.com/gb/share/5726.htm
Directive
扩展html,给html添加声明语句,以便实现自己的需求。对于页面中html元素以ng为前缀的属性名称,ng是angular的命名空间
- 架构师之jdk的bug排查(一)---------------split的点号陷阱
nannan408
split
1.前言.
jdk1.6的lang包的split方法是有bug的,它不能有效识别A.b.c这种类型,导致截取长度始终是0.而对于其他字符,则无此问题.不知道官方有没有修复这个bug.
2.代码
String[] paths = "object.object2.prop11".split("'");
System.ou
- 如何对10亿数据量级的mongoDB作高效的全表扫描
quentinXXZ
mongodb
本文链接:
http://quentinXXZ.iteye.com/blog/2149440
一、正常情况下,不应该有这种需求
首先,大家应该有个概念,标题中的这个问题,在大多情况下是一个伪命题,不应该被提出来。要知道,对于一般较大数据量的数据库,全表查询,这种操作一般情况下是不应该出现的,在做正常查询的时候,如果是范围查询,你至少应该要加上limit。
说一下,
- C语言算法之水仙花数
qiufeihu
c算法
/**
* 水仙花数
*/
#include <stdio.h>
#define N 10
int main()
{
int x,y,z;
for(x=1;x<=N;x++)
for(y=0;y<=N;y++)
for(z=0;z<=N;z++)
if(x*100+y*10+z == x*x*x
- JSP指令
wyzuomumu
jsp
jsp指令的一般语法格式: <%@ 指令名 属性 =”值 ” %>
常用的三种指令: page,include,taglib
page指令语法形式: <%@ page 属性 1=”值 1” 属性 2=”值 2”%>
include指令语法形式: <%@include file=”relative url”%> (jsp可以通过 include