摘要:解释: swan.after可以拦截所有当前运行小程序对于API的调用,默认传入function时,只在API函数调用的返回阶段拦截。如果传入Object,则可以选择拦截的阶段(例如: 返回阶段、回调调用阶段)。 方法参数:Object Object 参数说明: 可拦截的所有方法 参见API文档,A
阅读全文
摘要:解释: Page.after可以增加Page级的切面,触发的时机是在所拦截的对应生命周期方法执行之后,也可以拦截所有页面上发生的事件(对于要拦截的事件,在swan文件上必须显示绑定了相应事件)。 方法参数:Object Object 参数说明: 可拦截的所有方法 onLoad onReady onS
阅读全文
摘要:解释: App.after可以增加APP级的切面,触发的时机是在所拦截的对应生命周期方法执行之后。 方法参数:Object Object 参数说明: 可拦截的所有方法 onLaunch onShow onHide onError onPageNotFound onLaunch onShow onHi
阅读全文
摘要:小程序的开发者或者服务商会提供一些lib库,用来代理小程序的生命周期或API等,进而想要进行一些通用逻辑的处理(例如: 打点/事件触发/统一登录等等通用逻辑)。 通常,小程序开发者们使用这些扩展包时,不得不在各个使用点(生命周期、事件触发等)处显式调用。 为解决该类问题,智能小程序在框架层提供切面。
阅读全文
摘要:编译工具提供依赖分析模式和普通编译模式两种编译模式: 依赖分析模式:无用文件(不包含图片)不会被打包到产出中,支持node_modules的使用。 在依赖分析编译模式下正确的模块引用方式: // 在app.js中引用util文件夹下的a.js的方式:require('./util/a.js');//
阅读全文
摘要:解释:可以将一些公共的代码抽离成为一个单独的 js 文件,作为一个模块。模块可以通过 module.exports、exports 或者 export 对外暴露接口,使用require 或者 import 进行导入。 可以在需要使用这些模块的文件中,对模块进行引用:
阅读全文
摘要:解释: 在 JavaScript 文件中声明的变量和函数只在该文件中有效;不同的文件中可以声明相同名字的变量和函数,且不会互相影响。通过全局函数 getApp() 可以获取全局的应用实例,如果需要全局的数据可以在 App() 中设置 示例代码:
阅读全文
摘要:对于路由的触发方式以及页面生命周期函数如下: 详见页面生命周期函数 Tab 切换对应的生命周期(以 A、B 页面为 Tabbar 页面,C 是从 A 页面打开的页面,D 页面是从 C 页面打开的页面为例):
阅读全文
摘要:解释:getCurrentPages 全局函数用于获取当前页面栈的实例,以数组形式按栈的顺序给出,第一个元素为首页,最后一个元素为当前页面。 示例: 注意: 不要尝试修改页面栈,会导致路由以及页面状态错误。
阅读全文
摘要:在智能小程序中所有页面的路由全部由框架进行管理。 页面栈 解释:框架以栈的形式维护了当前的所有页面。 当发生路由切换的时候,页面栈的表现如下: 页面栈表现: 路由方式页面栈表现 初始化 新页面入栈 打开新页面 新页面入栈 页面重定向 当前页面出栈,新页面入栈 页面返回 页面出栈 Tab 切换 页面全
阅读全文
摘要:解释:setData 函数,用于将数据,从逻辑层发送到视图层,当开发者调用 setData 后,数据的变化,会引起视图层的更新。参数说明 说明: Object 以key: value的形式表示,将this.data中的key对应的值改变成value。key可以以数据路径的形式给出,支持改变数组中的某
阅读全文
摘要:智能小程序的逻辑层使用 JavaScript 编写; 逻辑层将数据进行处理后发送给视图层,同时接受视图层的反馈。 在 JavaScript 的基础上,我们提供了一些框架方法,用以辅助开发者更容易的开发小程序。 例如以下方法和功能说明: 提供了 App 和 Page 方法,分别用于注册小程序应用和每个
阅读全文
摘要:开发者在接收到触摸类事件后,在事件对象上,可以接收到当前停留在屏幕上的触摸点。 Touch 对象
阅读全文
摘要:当开发者绑定方法到事件,事件触发时,SWAN 会给触发的方法传递事件对象,事件对象因事件不同而不同,目前基础的事件对象结构为:
阅读全文
摘要:开发者可以在组件中自定义数据,并在事件发生时,由 SWAN 所在事件对象中,传递给绑定函数。 示例代码:
阅读全文
摘要:事件处理 开发者可以使用bind: + 事件名来进行事件绑定 目前支持的事件类型有:
阅读全文
摘要:开发者可以通过在元素上添加s-if指令,来在视图层进行逻辑判断:示例:
阅读全文
摘要:开发者可以通过在元素上添加s-for指令,来渲染一个列表。 示例:
阅读全文
摘要:<!-- xxx.swan --><view> Hello My {{ name }}</view> // xxx.jsPage({ data: { name: 'SWAN' }});
阅读全文
摘要:这部分是每个智能小程序页面的展现模板,类似于 Web 开发中的 HTML ,SWAN 模板中使用的标签均为 SWAN 组件规定的标签。
阅读全文
摘要:pp.js 中存放全局的 JavaScript 逻辑。 示例:
阅读全文
摘要:申明需要后台运行的能力,类型为数组。目前支持以下项目: audio: 后台音乐播放如: 注:在此处申明了后台运行的接口,开发版和体验版上可以直接生效,正式版还需通过审核。 微信小程序对比微信公众号而言有什么优势?
阅读全文
摘要:用于设置预请求的所有url的列表,该部分URL,会在进入小程序后自动发起请求(优于开发者代码加载)。当开发者再次发起request请求时可以增加cache参数,如果配置的prefetch请求已返回,则会直接返回请求结果,如果配置的prefetch请求还未返回,则当次request会继续之前未发送完成
阅读全文
摘要:用于设置客户端底部的tab栏:可通过tabBar设置tab的颜色、个数、位置、背景色等内容。
阅读全文
摘要:window 用于设置 SWAN 的状态栏、导航条、标题、窗口背景色。 注意: navigationStyle 全局配置Android和iOS从百度 App版本11.1.0开始支持, 但子页面配置支持情况Android从百度 App版本11.1开始支持,iOS从百度 App版本11.2开始支持, 做
阅读全文
摘要:pages pages 接受一个数组,每一项都是一个字符串,指定 SWAN App 都有哪些页面。每一项代表页面的[路径 + 文件名],数组第一项代表 SWAN 初始页面。 SWAN 中新增或减少页面的话,需要在 pages 中进行配置。 配置项中不需要加文件后缀名, SWAN 会自动解析。 如,开
阅读全文
摘要:可以通过配置 app.json 文件,设置 SWAN 的界面、路径、多 TAB 等。 app.json 配置项列表如下 「大理石机械构件」常用大理石机械构件的材质有哪些?
阅读全文
摘要:Cookie 用于存储 web 页面的用户信息。 什么是 Cookie? Cookie 是一些数据, 存储于你电脑上的文本文件中。 当 web 服务器向浏览器发送 web 页面时,在连接关闭后,服务端不会记录用户的信息。 Cookie 的作用就是用于解决 "如何记录客户端的用户信息": 当用户访问
阅读全文
摘要:实例 为所有 AJAX 请求设置默认 URL 和 success 函数: 亲自试一试 定义和用法 jQuery.ajaxSetup() 方法设置全局 AJAX 默认选项。 语法 jQuery.ajaxSetup(name:value, name:value, ...) 示例 设置 AJAX 请求默认
阅读全文
摘要:实例 为所有 AJAX 请求设置默认 URL 和 success 函数: 亲自试一试 定义和用法 jQuery.ajaxSetup() 方法设置全局 AJAX 默认选项。 语法 jQuery.ajaxSetup(name:value, name:value, ...) 示例 设置 AJAX 请求默认
阅读全文
摘要:实例 为所有 AJAX 请求设置默认 URL 和 success 函数: 亲自试一试 定义和用法 jQuery.ajaxSetup() 方法设置全局 AJAX 默认选项。 语法 jQuery.ajaxSetup(name:value, name:value, ...) 示例 设置 AJAX 请求默认
阅读全文
摘要:jQuery load() 方法 jQuery load() 方法是简单但强大的 AJAX 方法。 load() 方法从服务器加载数据,并把返回的数据放入被选元素中。 语法: $(selector).load(URL,data,callback); $(selector).load(URL,data
阅读全文
摘要:AJAX 是与服务器交换数据的技术,它在不重载全部页面的情况下,实现了对部分网页的更新。 jQuery AJAX 实例 使用 jQuery AJAX 修改文本内容 获取外部内容 尝试一下 » jQuery AJAX 实例 使用 jQuery AJAX 修改文本内容 获取外部内容 使用 jQuery
阅读全文
摘要:AJAX 是与服务器交换数据的技术,它在不重载全部页面的情况下,实现了对部分网页的更新。 jQuery AJAX 实例 使用 jQuery AJAX 修改文本内容 获取外部内容 尝试一下 » jQuery AJAX 实例 使用 jQuery AJAX 修改文本内容 获取外部内容 使用 jQuery
阅读全文
摘要:AJAX 是与服务器交换数据的技术,它在不重载全部页面的情况下,实现了对部分网页的更新。 jQuery AJAX 实例 使用 jQuery AJAX 修改文本内容 获取外部内容 尝试一下 » jQuery AJAX 实例 使用 jQuery AJAX 修改文本内容 获取外部内容 使用 jQuery
阅读全文
摘要:缩小搜索元素的范围 三个最基本的过滤方法是:first(), last() 和 eq(),它们允许您基于其在一组元素中的位置来选择一个特定的元素。 其他过滤方法,比如 filter() 和 not() 允许您选取匹配或不匹配某项指定标准的元素。 jQuery first() 方法 first() 方
阅读全文
摘要:同胞拥有相同的父元素。 通过 jQuery,您能够在 DOM 树中遍历元素的同胞元素。 在 DOM 树中水平遍历 有许多有用的方法让我们在 DOM 树进行水平遍历: siblings() next() nextAll() nextUntil() prev() prevAll() prevUntil(
阅读全文
摘要:后代是子、孙、曾孙等等。 通过 jQuery,您能够向下遍历 DOM 树,以查找元素的后代。 向下遍历 DOM 树 下面是两个用于向下遍历 DOM 树的 jQuery 方法: children() find() jQuery children() 方法 children() 方法返回被选元素的所有直
阅读全文
摘要:祖先是父、祖父或曾祖父等等。 通过 jQuery,您能够向上遍历 DOM 树,以查找元素的祖先。 向上遍历 DOM 树 这些 jQuery 方法很有用,它们用于向上遍历 DOM 树: parent() parents() parentsUntil() jQuery parent() 方法 paren
阅读全文
摘要:什么是遍历? jQuery 遍历,意为"移动",用于根据其相对于其他元素的关系来"查找"(或选取)HTML 元素。以某项选择开始,并沿着这个选择移动,直到抵达您期望的元素为止。 下图展示了一个家族树。通过 jQuery 遍历,您能够从被选(当前的)元素开始,轻松地在家族树中向上移动(祖先),向下移动
阅读全文
摘要:通过 jQuery,很容易处理元素和浏览器窗口的尺寸。 jQuery 尺寸方法 jQuery 提供多个处理尺寸的重要方法: width() height() innerWidth() innerHeight() outerWidth() outerHeight() jQuery 尺寸 jQuery
阅读全文
摘要:jQuery css() 方法 css() 方法设置或返回被选元素的一个或多个样式属性。 返回 CSS 属性 如需返回指定的 CSS 属性的值,请使用如下语法: css("propertyname"); css("propertyname"); 下面的例子将返回首个匹配元素的 background-
阅读全文
摘要:jQuery 操作 CSS jQuery 拥有若干进行 CSS 操作的方法。我们将学习下面这些: addClass() - 向被选元素添加一个或多个类 removeClass() - 从被选元素删除一个或多个类 toggleClass() - 对被选元素进行添加/删除类的切换操作 css() - 设
阅读全文
摘要:通过 jQuery,可以很容易地删除已有的 HTML 元素。 删除元素/内容 如需删除元素和内容,一般可使用以下两个 jQuery 方法: remove() - 删除被选元素(及其子元素) empty() - 从被选元素中删除子元素 jQuery remove() 方法 jQuery remove(
阅读全文
摘要:通过 jQuery,可以很容易地添加新元素/内容。 添加新的 HTML 内容 我们将学习用于添加新内容的四个 jQuery 方法: append() - 在被选元素的结尾插入内容 prepend() - 在被选元素的开头插入内容 after() - 在被选元素之后插入内容 before() - 在被
阅读全文
摘要:jQuery 拥有可操作 HTML 元素和属性的强大方法。 jQuery DOM 操作 jQuery 中非常重要的部分,就是操作 DOM 的能力。 jQuery 提供一系列与 DOM 相关的方法,这使访问和操作元素和属性变得很容易。 DOM 定义访问 HTML 和 XML 文档的标准: "W3C 文
阅读全文
摘要:通过 jQuery,可以把动作/方法链接在一起。 Chaining 允许我们在一条语句中运行多个 jQuery 方法(在相同的元素上)。 jQuery 方法链接 直到现在,我们都是一次写一条 jQuery 语句(一条接着另一条)。 不过,有一种名为链接(chaining)的技术,允许我们在相同的元素
阅读全文
摘要:Callback 函数在当前动画 100% 完成之后执行。 jQuery 动画的问题 许多 jQuery 函数涉及动画。这些函数也许会将 speed 或 duration 作为可选参数。 例子:$("p").hide("slow") speed 或 duration 参数可以设置许多不同的值,比如
阅读全文
摘要:实例 jQuery stop() 滑动演示 jQuery stop() 方法。 jQuery stop() 动画(带参数)演示 jQuery stop() 方法 jQuery stop() 方法 jQuery stop() 方法用于停止动画或效果,在它们完成之前。 stop() 方法适用于所有 jQ
阅读全文
摘要:jQuery 动画 - animate() 方法 jQuery animate() 方法用于创建自定义动画。 语法: $(selector).animate({params},speed,callback); $(selector).animate({params},speed,callback);
阅读全文
摘要:jQuery 滑动方法可使元素上下滑动。 点击这里,隐藏/显示面板 实例 jQuery slideDown()演示 jQuery slideDown() 方法。 jQuery slideUp()演示 jQuery slideUp() 方法。 jQuery slideToggle()演示 jQuery
阅读全文
摘要:实例 jQuery fadeIn()演示 jQuery fadeIn() 方法。 jQuery fadeOut()演示 jQuery fadeOut() 方法。 jQuery fadeToggle()演示 jQuery fadeToggle() 方法。 jQuery fadeTo()演示 jQuer
阅读全文
摘要:隐藏、显示、切换,滑动,淡入淡出,以及动画,哇哦! 点击 显示/隐藏面板 实例 jQuery hide()简单的jQuery hide()方法演示。 jQuery hide()另一个hide()实例。演示如何隐藏文本。 jQuery hide() 和 show() 通过 jQuery,您可以使用 h
阅读全文
摘要:什么是事件? 页面对不同访问者的响应叫做事件。 事件处理程序指的是当 HTML 中发生某些事件时所调用的方法。 实例: 在元素上移动鼠标。 选取单选按钮 点击元素 在事件中经常使用术语"触发"(或"激发")例如: "当您按下按键时触发 keypress 事件"。 常见 DOM 事件: jQuery
阅读全文
摘要:jQuery 语法 jQuery 语法是通过选取 HTML 元素,并对选取的元素执行某些操作。 基础语法: $(selector).action() 美元符号定义 jQuery 选择符(selector)"查询"和"查找" HTML 元素 jQuery 的 action() 执行对元素的操作 实例:
阅读全文
摘要:您需要具备的基础知识 在您开始学习 jQuery 之前,您应该对以下知识有基本的了解: HTML CSS JavaScript 如果您需要首先学习这些科目,请在我们的 首页 查找这些教程。 什么是 jQuery ? jQuery是一个JavaScript函数库。 jQuery是一个轻量级的"写的少,
阅读全文
摘要:通常,我们在数据库中存储数据。不过,如果希望数据的可移植性更强,我们可以把数据存储 XML 文件中。 创建并保存 XML 文件 如果数据要被传送到非 Windows 平台上的应用程序,那么把数据保存在 XML 文件中是有好处的。请记住,XML 有很强的跨平台可移植性,并且数据无需转换! 首先,我们将
阅读全文
摘要:本节列出了您在使用 XML 时应该尽量避免使用的技术。 Internet Explorer - XML 数据岛 它是什么?XML 数据岛(XML Data Islands)是嵌入 HTML 页面中的 XML 数据。 为什么要避免使用它?XML 数据岛只在 Internet Explorer 浏览器中
阅读全文
摘要:XML DOM DOM 把 XML 文档视为一种树结构。通过这个 DOM 树,可以访问所有的元素。可以修改它们的内容(文本以及属性),而且可以创建新的元素。元素,以及它们的文本和属性,均被视为节点。 在本教程的较早章节中,我们介绍了 XML DOM,并使用了 XML DOM 的 getElement
阅读全文
摘要:如需使用 PHP 在服务器上生成 XML 响应,请使用下面的代码: 请注意,响应头部的内容类型必须设置为 "text/xml"。
阅读全文
摘要:XML 命名空间提供避免元素命名冲突的方法。 命名冲突 在 XML 中,元素名称是由开发者定义的,当两个不同的文档使用相同的元素名时,就会发生命名冲突。 这个 XML 文档携带着某个表格中的信息: <table> <tr> <td>Apples</td> <td>Bananas</td> </tr>
阅读全文
摘要:本章讲解如何把 XML 数据显示为 HTML。 在 HTML 中显示 XML 数据 在上一节中,我们讲解了如何通过 JavaScript 来解析 XML 并访问 DOM。 本例遍历一个 XML 文件 (cd_catalog.xml),然后把每个 CD 元素显示为一个 HTML 表格行: <html>
阅读全文
摘要:XMLHttpRequest 对象用于在后台与服务器交换数据。 什么是 XMLHttpRequest 对象? XMLHttpRequest 对象用于在后台与服务器交换数据。 XMLHttpRequest 对象是开发者的梦想,因为您能够: 在不重新加载页面的情况下更新网页 在页面已加载后从服务器请求数
阅读全文
摘要:通过使用 XSLT,您可以向 XML 文档添加显示信息。 使用 XSLT 显示 XML XSLT 是首选的 XML 样式表语言。 XSLT (eXtensible Stylesheet Language Transformations) 远比 CSS 更加完善。 使用 XSLT 的方法之一是在浏览器
阅读全文
摘要:通过使用 CSS,可为 XML 文档添加显示信息。 使用 CSS 显示您的 XML? 使用 CSS 来格式化 XML 文档是有可能的。 下面的例子就是关于如何使用 CSS 样式表来格式化 XML 文档: 这是 XML 文件:CD 目录 这是样式表:CSS 文件 最后,请查看效果:由 CSS 文件格式
阅读全文
摘要:在所有现代浏览器中,均能够查看原始的 XML 文件。 不要指望 XML 文件会直接显示为 HTML 页面。 查看 XML 文件 查看这个 XML 文件:note.xml 打开 XML 文件 - XML 文档将显示为代码颜色化的根以及子元素。通过点击元素左侧的加号或减号,可以展开或收起元素的结构。如需
阅读全文
摘要:几乎所有的主流浏览器均支持 XML 和 XSLT。 Mozilla Firefox 从 1.0.2 版本开始,Firefox 就已开始支持 XML 和 XSLT(包括 CSS)。 Mozilla Firefox 从 1.0.2 版本开始,Firefox 就已开始支持 XML 和 XSLT(包括 CS
阅读全文
摘要:XML 错误会终止您的程序 XML 文档中的错误会终止你的 XML 程序。 W3C 的 XML 规范声明:如果 XML 文档存在错误,那么程序就不应当继续处理这个文档。理由是,XML 软件应当轻巧,快速,具有良好的兼容性。 如果使用 HTML,创建包含大量错误的文档是有可能的(比如你忘记了结束标签)
阅读全文
摘要:拥有正确语法的 XML 被称为“形式良好”的 XML。 通过 DTD 验证的 XML 是“合法”的 XML。 形式良好的 XML 文档 “形式良好”或“结构良好”的 XML 文档拥有正确的语法。 “形式良好”(Well Formed)的 XML 文档会遵守前几章介绍过的 XML 语法规则: XML
阅读全文
摘要:XML 属性 从 HTML,你会回忆起这个:<img src="computer.gif">。"src" 属性提供有关 <img> 元素的额外信息。 在 HTML 中(以及在 XML 中),属性提供有关元素的额外信息: 属性通常提供不属于数据组成部分的信息。在下面的例子中,文件类型与数据无关,但是对
阅读全文
摘要:XML 文档包含 XML 元素。 什么是 XML 元素? XML 元素指的是从(且包括)开始标签直到(且包括)结束标签的部分。 元素可包含其他元素、文本或者两者的混合物。元素也可以拥有属性。 <bookstore> <book category="CHILDREN"> <title>Harry Po
阅读全文
摘要:XML 的语法规则很简单,且很有逻辑。这些规则很容易学习,也很容易使用。 所有 XML 元素都须有关闭标签 在 HTML,经常会看到没有关闭标签的元素: <p>This is a paragraph <p>This is another paragraph 在 XML 中,省略关闭标签是非法的。所有
阅读全文
摘要:XML 文档形成了一种树结构,它从"根部"开始,然后扩展到"枝叶"。 一个 XML 文档实例 XML 文档使用简单的具有自我描述性的语法: 第一行是 XML 声明。它定义 XML 的版本(1.0)和所使用的编码(UTF-8 : 万国码, 可显示各种语言)。 下一行描述文档的根元素(像在说:"本文档是
阅读全文
摘要:XML 应用于 Web 开发的许多方面,常用于简化数据的存储和共享。 XML 把数据从 HTML 分离 如果您需要在 HTML 文档中显示动态数据,那么每当数据改变时将花费大量的时间来编辑 HTML。 通过 XML,数据能够存储在独立的 XML 文件中。这样您就可以专注于使用 HTML/CSS 进行
阅读全文
摘要:XML 简介 XML 被设计用来传输和存储数据。 HTML 被设计用来显示数据。 应该掌握的基础知识 在您继续学习之前,需要对以下知识有基本的了解: HTML JavaScript 如果您希望首先学习这些项目,请在我们的 首页 访问这些教程。 什么是 XML? XML 指可扩展标记语言(EXtens
阅读全文
摘要:XML 指可扩展标记语言(eXtensible Markup Language)。 XML 被设计用来传输和存储数据。 XML 很重要,也很容易学习。
阅读全文
摘要:大理石平台 内建的 Expat 解析器使在 PHP 中处理 XML 文档成为可能。 XML 是什么? XML 用于描述数据,其焦点是数据是什么。XML 文件描述了数据的结构。 在 XML 中,没有预定义的标签。您必须定义自己的标签。 如需学习更多关于 XML 的知识,请访问我们的 XML 教程。 E
阅读全文
摘要:dict Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 举个例子,假设要根据同学的名字查找对应的成绩,如果用list实现,需要两个list: 给定一个名字,要查找对应的成绩,就先要在na
阅读全文
摘要:题目:输入一个奇数,然后判断最少几个 9 除于该数的结果为整数。 程序分析:999999 / 13 = 76923。
阅读全文
摘要:题目:输出一个随机数。 程序分析:使用 random 模块。
阅读全文
摘要:程序分析:可填在百位、十位、个位的数字都是1、2、3、4。组成所有的排列后再去 掉不满足条件的排列。 以上实例输出结果为:
阅读全文
摘要:Tkinter的提供各种控件,如按钮,标签和文本框,一个GUI应用程序中使用。这些控件通常被称为控件或者部件。 目前有15种Tkinter的部件。我们提出这些部件以及一个简短的介绍,在下面的表: 标准属性 标准属性也就是所有控件的共同属性,如大小,字体和颜色等等。 几何管理 Tkinter控件有特定
阅读全文
摘要:Tkinter 是 Python 的标准 GUI 库。Python 使用 Tkinter 可以快速的创建 GUI 应用程序。 由于 Tkinter 是内置到 python 的安装包中、只要安装好 Python 之后就能 import Tkinter 库、而且 IDLE 也是用 Tkinter 编写而
阅读全文
摘要:如果多个线程共同对某个数据修改,则可能出现不可预料的结果,为了保证数据的正确性,需要对多个线程进行同步。 使用Thread对象的Lock和Rlock可以实现简单的线程同步,这两个对象都有acquire方法和release方法,对于那些需要每次只允许一个线程操作的数据,可以将其操作放到acquire和
阅读全文
摘要:Python的Queue模块中提供了同步的、线程安全的队列类,包括FIFO(先入先出)队列Queue,LIFO(后入先出)队列LifoQueue,和优先级队列PriorityQueue。这些队列都实现了锁原语,能够在多线程中直接使用。可以使用队列来实现线程间的同步。 Queue模块中的常用方法: Q
阅读全文
摘要:Python通过两个标准库thread和threading提供对线程的支持。thread提供了低级别的、原始的线程以及一个简单的锁。 threading 模块提供的其他方法: threading.currentThread(): 返回当前的线程变量。 threading.enumerate(): 返
阅读全文
摘要:Python中使用线程有两种方式:函数或者用类来包装线程对象。 函数式:调用thread模块中的start_new_thread()函数来产生新线程。语法如下: 参数说明: function - 线程函数。 args - 传递给线程函数的参数,他必须是个tuple类型。 kwargs - 可选参数。
阅读全文
摘要:多线程类似于同时执行多个不同程序,多线程运行有如下优点: 使用线程可以把占据长时间的程序中的任务放到后台去处理。 用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度 程序的运行速度可能加快 在一些等待的任务实现上如用户输入、文件读写和网络收发数
阅读全文
摘要:SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它是一组用于由源地址到目的地址传送邮件的规则,由它来控制信件的中转方式。 python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。 Python创建 SMTP 对象语法
阅读全文
摘要:Python Internet 模块 以下列出了 Python 网络编程的一些重要模块:
阅读全文
摘要:简单实例 服务端 我们使用 socket 模块的 socket 函数来创建一个 socket 对象。socket 对象可以通过调用其他函数来设置一个 socket 服务。 现在我们可以通过调用 bind(hostname, port) 函数来指定服务的 port(端口)。 接着,我们调用 socke
阅读全文
摘要:函数描述 服务器端套接字 s.bind() 绑定地址(host,port)到套接字, 在AF_INET下,以元组(host,port)的形式表示地址。 s.listen() 开始TCP监听。backlog指定在拒绝连接之前,操作系统可以挂起的最大连接数量。该值至少为1,大部分应用程序设为5就可以了。
阅读全文
摘要:Python 提供了两个级别访问的网络服务。: 低级别的网络服务支持基本的 Socket,它提供了标准的 BSD Sockets API,可以访问底层操作系统Socket接口的全部方法。 高级别的网络服务模块 SocketServer, 它提供了服务器中心类,可以简化网络服务器的开发。 什么是 So
阅读全文
摘要:DB API中定义了一些数据库操作的错误及异常,下表列出了这些错误和异常: 大理石平台知识
阅读全文
摘要:数据库更新操作 更新操作用于更新数据表的的数据,以下实例将 EMPLOYEE 表中的 SEX 字段为 'M' 的 AGE 字段递增 1:
阅读全文
摘要:数据库插入操作 以下实例使用执行 SQL INSERT 语句向表 EMPLOYEE 插入记录:
阅读全文
摘要:创建数据库表 如果数据库连接存在我们可以使用execute()方法来为数据库创建表,如下所示创建表EMPLOYEE:
阅读全文
摘要:Cookie信息检索页非常简单,Cookie信息存储在CGI的环境变量HTTP_COOKIE中,存储格式如下: 以下是一个简单的CGI检索cookie信息的程序:
阅读全文
摘要:在 http 协议一个很大的缺点就是不对用户身份的进行判断,这样给编程人员带来很大的不便, 而 cookie 功能的出现弥补了这个不足。 cookie 就是在客户访问脚本的同时,通过客户的浏览器,在客户硬盘上写入纪录数据 ,当下次客户访问脚本时取回数据信息,从而达到身份判别的功能,cookie 常用
阅读全文
摘要:所有的CGI程序都接收以下的环境变量,这些变量在CGI程序中发挥了重要的作用:
阅读全文
摘要:网页浏览 为了更好的了解 CGI 是如何工作的,我们可以从在网页上点击一个链接或 URL 的流程: 1、使用你的浏览器访问 URL 并连接到 HTTP web 服务器。 2、Web 服务器接收到请求信息后会解析 URL,并查找访问的文件在服务器上是否存在,如果存在返回文件的内容,否则返回错误信息。
阅读全文
摘要:正则表达式: 解析: 首先,这是一个字符串,前面的一个 r 表示字符串为非转义的原始字符串,让编译器忽略反斜杠,也就是忽略转义字符。但是这个字符串里没有反斜杠,所以这个 r 可有可无。 (.*) 第一个匹配分组,.* 代表匹配除换行符之外的所有字符。 (.*?) 第二个匹配分组,.*? 后面多个问号
阅读全文