- 用Python开发一个简单的“记忆翻牌”小游戏
风亦辰739
Python小游戏pythonpygame开发语言
“记忆翻牌”是一款经典的益智小游戏,玩家需要通过记忆卡片的位置配对相同的图案。今天我们将使用pygame库实现一个简单版本的记忆翻牌游戏。一、游戏规则游戏开始时,卡片会随机排列并翻面。玩家一次可以翻两张卡片:如果图案相同,卡片保持翻开状态。如果图案不同,卡片会短暂显示后翻回去。游戏目标是用最少的步数找到所有配对。二、开发环境开发工具:任意Python编辑器(如PyCharm、VSCode)。依赖库
- 蓝桥杯常见算法模板(Python组)
-777.
蓝桥杯算法
目录1.二分1.整数二分(二分答案):2.浮点数二分(考不到)2.前缀和、差分1.前缀和一维:二维:2.差分一维:二维:3.贪心4.线性DP1.最长上升子序列(子序列问题一般下标从一开始)2.最长公共子序列3.常见背包模型1.0-1背包2.完全背包3.多重背包4.混合背包5.二维费用背包6.分组背包5.搜索1.DFS模板:1.子集问题2.全排列问题2.BFS6.数据结构1.并查集2.树状数组3.树
- Python进程与线程:分布式进程
梧桐树0429
python分布式开发语言
在Python中,当我们面临选择使用线程(Thread)还是进程(Process)时,进程往往因其更高的稳定性和可扩展性而被优先考虑。特别是,进程能够跨越多台机器进行分布,而线程则受限于同一台机器的多个CPU核心。Python的multiprocessing模块不仅支持多进程,其managers子模块更是提供了将多进程分布到多台机器上的能力。通过managers模块,我们可以轻松编写分布式多进程程
- Python 进程与线程-分布式进程
赔罪
分布式python开发语言
目录分布式进程小结分布式进程在Thread和Process中,应当优选Process,因为Process更稳定,而且,Process可以分布到多台机器上,而Thread最多只能分布到同一台机器的多个CPU上。Python的multiprocessing模块不但支持多进程,其中managers子模块还支持把多进程分布到多台机器上。一个服务进程可以作为调度者,将任务分布到其他多个进程中,依靠网络通信。
- Python3 使用 clickhouse-connect 操作 clickhouse
她不喜欢喝咖啡
Pythonclickhouse
'''版本:Python3.7x86clickhouse24.6.1.3573clickhouse-connect0.6.22'''代码一:#pipinstallclickhouse-connectimportclickhouse_connect#准备参数host="192.168.1.112"port=8123username="default"password="123456"database
- python连接clickhouse
studying_mmr
pythonpythonclickhouse数据分析大数据numpy
Python连接clickhouse成功连接并输出数据避坑需要准备的package连接数据库读取数据需要的包导出文件Reference需要准备的packageclickhouse驱动程序pipinstallclickhouse-driverpipinstallclickhouse-driver[numpy]pipinstallopenpyxlpipinstallPillow这里下载的时候会报错如果
- python/R 连接 clickhouse
weixin_41283198
pythonclickhouser语言python大数据r语言
1、python-clickhouseimportnumpyasnpfromclickhouse_driverimportClientimportpandasaspdsql=open('/opt/check_detect_local.sql','r',encoding='utf8')sqltxt=sql.readlines()print(len(sqltxt))sqls=[]foriinnp.ar
- micropython入门指南电子版_MicroPython入门指南
EchiTie
Python是一种脚本语言,是一款非常容易使用的脚本语言,语法简介、使用简单、功能强大、容易扩展。有非常多的库可以使用。网络功能和计算功能也很强。方便的和其他语言配合使用。完全开源,受到原来越多的开发者青睐。不过由于受到硬件成本、运行性能、开发习惯等原因。没有在通用嵌入式方面得到太多应用。所以microPython应运而生。MicroPython可以在多种嵌入式硬件平台上运行,目前已经有STM32
- C# JIEBA.NET分词器开发指南
老胖闲聊
C#c#.net开发语言
JIEBA.NET是Jieba分词器的.NET实现版本。Jieba是一个流行的中文分词工具,最初是用Python编写的,而JIEBA.NET将其移植到了.NET平台。它的核心功能是将连续的中文文本切分成有意义的词语(分词),并支持关键词提取、词性标注等功能。以下将通过JIEBA.NET的工作原理、分词过程拆解和案例实战三部分来进行详细讲解:一、工作原理1.分词的基本原理中文分词是将连续的中文字符序
- Go语言入门基础详解
老胖闲聊
gogolang开发语言后端
一、语言历史背景Go语言由Google工程师RobertGriesemer、RobPike和KenThompson于2007年设计,2009年正式开源。设计目标:兼具Python的开发效率与C的执行性能内置并发支持(goroutine/channel)简洁的类型系统现代化的包管理跨平台编译能力//经典HelloWorld示例packagemain//声明包名import"fmt"//导入标准库fu
- python flask sqlalchemy JSON 数据查询
Purple_Grape207
pythonflaskpython
classUser(db.Model):id=db.Column(db.Integer,primary_key=True)username=db.Column(db.String(80),unique=True,nullable=False)email=db.Column(db.String(120),unique=True,nullable=False)userInfos=db.Column(d
- FastAPI 使用教程:将函数改造成可调用的 API(附完整示例)
Lunar*
开发与工具使用fastapi
引言FastAPI是一个现代化、快速(高性能)、基于标准Python类型提示构建的Web框架,非常适合开发RESTfulAPI。如果你有现成的Python函数,并希望通过HTTP请求调用它,FastAPI可以帮助你快速实现。在本文中,我们将介绍如何使用FastAPI将已有函数改造成API,并通过GET和POST请求调用它。同时,我们还会展示如何在服务运行时,自定义主机地址、端口号以及启用SSL证书
- 【Python】使用Python连接ClickHouse进行批量数据写入
音乐学家方大刚
ClickhousePythonpythonclickhouseoracle
有许多时候眼泪就要流那扇窗是让我坚强的理由小小的门口还有她的温柔给我温暖陪伴我左右曾经的乡音悄悄地隐藏说不出的诺言一直放心上李健《异乡人》在本教程中,我们将探讨如何使用Python连接到ClickHouse数据库,并执行批量数据写入操作。ClickHouse是一个用于在线分析处理查询(OLAP)的列式数据库管理系统,它能够以极高的速度进行数据查询和更新操作。环境准备首先,确保你的环境中已安装Cli
- Python通过TCP端口和HTTP端口连接clickhouse的几种方法与报错解决
有好的生发方法记得推荐给我
clickhouse
一、使用request库使用HTTP协议端口,默认为8123这种方法只能获取指定格式的数据importrequestsSSL_VERIFY=Falsehost='http://127.0.0.1:8123'//ip地址及HTTP协议端口query='select*fromdatabase.table_nameslimit5'//SQL语句user=('username','password')//
- python连接clickhouse两种方法
dair6
sql相关问题python数据库sql
1.使用Client类importloggingfromapscheduler.schedulers.blockingimportBlockingSchedulerfromclickhouse_driverimportClientlogger=logging.getLogger(__name__)#操作日志对象classCkClient():"""数据库连接的公共类,初始化连接,自定义查询,删除等
- 验证码识别:使用OCR技术识别图形验证码详解
数据知道
2025年爬虫和逆向教程ocrpython爬虫OCR识别验证码识别图片验证码
文章目录一、基本原理二、所需工具2.1Python环境2.2图像处理库2.3OCR引擎2.4Python接口三、实现步骤3.1获取验证码图像3.2图像预处理3.3使用OCR进行字符识别3.4基本OCR识别样例四、提高识别准确率的方法4.1字符分割4.2使用深度学习模型4.3数据增强4.4集成多个OCR引擎五、实际应用中的注意事项六、总结验证码(CAPTCHA)是一种用于区分人类用户和自动化程序的安
- MicroPython 智能硬件开发完整指南
老胖闲聊
Python智能硬件
第一部分:MicroPython基础1.MicroPython简介定义:专为微控制器设计的精简Python3实现,支持硬件直接操作。特点:语法兼容Python3,但移除复杂功能(如多线程)。支持GPIO、PWM、I2C、SPI等硬件接口。适用于ESP32、ESP8266、RaspberryPiPico等开发板。2.开发环境搭建硬件准备推荐开发板:ESP32(性价比高,WiFi/BLE双模)、Ras
- 【Python系列】如何通过PyQt5构建桌面应用
东临碣石82
python
Python标准内置了Tkinter库可以用于开发桌面应用,但其创建的界面外观不够现代。PyQt5是一个用于创建图形用户界面(GUI)的Python库,它基于强大的Qt库,为Python开发者提供了丰富的功能和选项,用于构建高质量的跨平台桌面应用程序。以下是PyQt5的详细介绍:一、基本概述定义:PyQt5是一个用于Python编程语言的GUI库,它基于Qt5框架,由RiverbankComput
- 计算机科学与技术python方向_合肥师范学院计算机科学与技术python复习
weixin_39710106
1.计算机是根据指令操作数据的设备,具备功能性和可编程性两个基本特性2.程序设计语言的执行方式有编译执行和解释执行3.语言特点:与平台无关、粘性扩展、开源理念、支持中文、类库丰富4.IPO程序编写方法:input、process、output5.2.x与3.x的区别:(1)修改编码:3.x系列默认采用UTF-8编码;(2)去掉长整数类型:3.x系列不再区分整数和长整数类型,只有int类型,int类
- python执行cmd命令行异步执行_Python 异步调用命令行工具
weixin_39719732
当你在自己的Python程序中采用了基于事件循环的异步编程方法之后,你就会发现自己不自觉地被其牢牢吸引住,并不是说这一方法多么棒,而是因为你不得不想办法保证程序中的任意环节都不能是阻塞的!例如当前的场景是希望从MongoDB中读取每一条未处理过的数据,下载并保存其中的图片信息,然后更新数据库的内容。Python常用的MongoDB异步驱动是Motor:结合asyncio使用方法如下:importm
- Python Pandas带多组参数和标签的Snowflake数据库批量数据导出程序
weixin_30777913
pandaspython云计算数据仓库
设计一个基于多个带标签的SnowflakeSQL模板作为配置文件和多组参数的PythonPandas代码程序,实现根据不同的输入参数自动批量地将Snowflake数据库中的数据导出为CSV文件到指定目录上,然后逐个文件压缩为zip文件,标签和多个参数(以“_”分割)为组成导出数据文件名,文件已经存在则覆盖原始文件。需要考虑SQL结果集是大数据量分批数据导出的情况,通过多线程和异步操作来提高程序性能
- Python和FastAPI框架开发和容器化部署AWS上支持多种LLM和向量数据库的微服务API
weixin_30777913
python语言模型微服务aws
用FastAPI创建一个输入提示词和所使用的LLM名称和向量搜索方式的API,返回LLM输出文本,其中用到OpenAIGPT4o3和AWSBedrock上的多个LLM模型的API,通过内部的类配置使用的模型和向量数据搜索类型,向量数据搜索类型包括faiss向量数据库和AWSKendra向量数据库搜索服务,这样的逻辑用设计模式中的工厂模式实现,用Python实现Docker打包项目Python代码并
- 超详细Python教程——SQL详解之DDL
月流霜
pythonsql数据库
SQL详解之DDL我们通常可以将SQL分为四类,分别是DDL(数据定义语言)、DML(数据操作语言)、DCL(数据控制语言)和TCL(事务控制语言)。DDL主要用于创建、删除、修改数据库中的对象,比如创建、删除和修改二维表,核心的关键字包括create、drop和alter;DML主要负责数据的插入、删除、更新和查询,关键词包括insert、delete、update和select;DCL用于授予
- leetcode【面试经典150系列】(一)
23#.lsy
算法算法数据结构
目录121.买卖股票最佳时机题目描述示例算法分析代码(python3)122.买卖股票最佳时机II题目描述示例算法分析代码(python3)55.跳跃游戏题目描述示例算法分析代码45.跳跃游戏II题目描述示例算法分析代码121.买卖股票最佳时机题目描述给定一个数组prices,它的第i个元素prices[i]表示一支给定股票第i天的价格。你只能选择某一天买入这只股票,并选择在未来的某一个不同的日子
- 医学人工智能影像诊断数据收集与整理
V搜xhliang0246
人工智能健康医疗算法
在医学领域中,人工智能(AI)尤其是深度学习技术,已经被广泛应用于医学影像的分析和诊断。为了训练这些模型,需要大量的高质量标注数据。下面我会给出一个简单的示例流程,介绍如何收集、整理和准备医学影像数据集,并提供一些基础的Python代码示例。数据收集首先,你需要收集包含医学影像的数据集。这些数据通常来自医院或研究机构,并且需要经过伦理审查和患者同意。示例数据集假设我们有一个包含肺部X光片的数据集,
- 数据处理与图形绘制的多领域应用案例,学会了你也是高手!
A达峰绮
经验分享数据处理图形绘制经典案例
一、引言在当今数字化时代,数据处理与图形绘制已成为各领域不可或缺的技术手段。从科学研究到商业分析,从工程设计到日常决策,海量的数据需要高效处理,而直观清晰的图形则能帮助人们迅速理解数据背后的信息。本教程将通过多个具体应用案例,涵盖多种编程语言,深入讲解数据处理与图形绘制的实践方法,助力学习者解决学习过程中的难题,提升相关技能。二、Python在数据处理与图形绘制中的应用(一)金融数据分析案例数据获
- 大模型开发教程:从零开始的入门指南!
程序员二飞
人工智能java数据库职场和发展深度学习
概述大模型开发教程引领人工智能领域前沿,从基础概念至实战项目,全面覆盖Python与深度学习框架使用,指导初学者构建线性回归、逻辑回归、神经网络等模型,深入探索图像分类、情感分析等复杂应用,为探索未来智能世界提供坚实基石。前排提示,文末有大模型AGI-CSDN独家资料包哦!二、基础知识2.1人工智能与深度学习的概念人工智能(AI)是计算机科学的一个分支,旨在使计算机能够执行通常需要人类智能的任务。
- conda创建python虚拟环境,python虚拟环境的好处
www55597
python开发语言人工智能
大家好,小编来为大家解答以下问题,python虚拟环境和主环境有什么区别,conda创建python虚拟环境,现在让我们一起来看看吧!Sourcecodedownload:本文相关源码和其他大多数现代编程语言一样,Python对包和模块的下载、存储以及管理有其自己的一套方法。Python的包一般存在几个地方python的皮卡丘如何写代码。比如,大部分系统包会存在sys.prefix指定的路径下。在
- Python中存储数据——json模块
小白的高手之路
python学习pythonjson开发语言
很多时候,程序要把信息存储在列表和字典等数据结构中。一种简单的方式是使用json模块来存储数据。json模块能够将简单的Python数据结构存储到文件中,并在程序运行时加载文件中的数据。还可以使用json在Python程序之间分享数据。更重要的是,JSON数据格式并非Python专用的,能够将以JSON格式存储的数据与使用其他编程语言的人分享。JSON(JavaScriptObjectNotion
- Python项目在 Cursor 编辑器中 Conda 环境配置问题
phper8
pythonpythoncondacursor
在开发使用FastApi框架的Python某项目时,我遇到了一个因为Conda环境配置没有起作用的问题。我是用Cursor编辑器开发FastApi项目的,项目运行在Conda环境blog中,由于使用了opencc-python-reimplemented,Python版本要求3.10.16。于是我创建blog基于此版本:condacreate-nblogpython=3.10.16但Cursor的
- 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