公司网站建设指南,办公软件,免费创建虚拟网站,做网站怎么赚钱 111最近我开始学习Python编程语言#xff0c;我发现Python拥有非常丰富的内置函数#xff0c;可以用来实现各种不同的功能。但是每当我需要查找一个内置函数时#xff0c;我总是需要联网使用搜索引擎进行查询。这种方式不仅费时费力#xff0c;而且需要联网#xff0c;很不方…
最近我开始学习Python编程语言我发现Python拥有非常丰富的内置函数可以用来实现各种不同的功能。但是每当我需要查找一个内置函数时我总是需要联网使用搜索引擎进行查询。这种方式不仅费时费力而且需要联网很不方便。我曾在网上搜索过一个能够离线查询Python内置函数的小工具但却没有找到合适的工具。
因此我决定自己开发一个这样的小工具以方便自己的Python学习和开发。我之前写过一个可以查询8086汇编指令的小工具我决定在这个基础上进行改进。
我将使用Python语言来编写这个小工具这样我就可以在不用离开编辑器的情况下快速查找所需的内置函数。我的计划是将所有的Python内置函数收录在这个小工具中并提供简要的文档说明和示例代码以帮助我更好地理解和使用这些函数。
在我完成这个小工具后我将分享给其他人希望可以帮助他们更轻松地学习Python编程。我相信这个小工具会对所有的Python初学者非常有用也会对一些有经验的Python开发者提供帮助。 一、程序效果展示
输入字母会自动出现匹配的下拉列表控制键盘↑和↓键就可以上下移动选择想查看的Python内置函数如下图。 二、程序编写过程
一为方便使用实现只用一个HTML文件运行小工具中所有的数据都使用div/div标签进行存放并直接利用Python内置函数名作为div的id,例如div idabs()以便后续通过id实现快速查找。
比如以下代码
div idabs 返回一个数的绝对值。 参数可以是整数、浮点数或任何实现了 __abs__() 的对象。 如果参数是一个复数则返回它的模。
/div
二使用获取用户在input框输入的字符每输入一个字符就马上开始字符串匹配字符串匹配从左到右匹程忽略字母大小写并把匹配到的结果用javascript的document.createElement(label)动态生成多个label标签作为下拉列表。主要代码如下
function chooseMenu() {//获得输入框的值var str document.getElementById(input).value;//获得标签名为div的数组把首地址给divsvar divs document.getElementsByTagName(div);var div_di;var templabel;var _style_top 0;//把choose层里面的子节点清空clearAllNode($(choose));if (str ! ) {//如果输入框的值不为空执行以下循环for (var i 2; i divs.length; i) {//getAttribute方法获得divs[i]节点属性id的值div_id divs[i].getAttribute(id);//如果字串str在主串div_id中出现在第0个位置则添加一个innerHTML为div_id的div到//choose层if (div_id.toLowerCase().indexOf(str.toLowerCase()) 0) {templabel document.createElement(label);templabel.className suggestions;templabel.innerHTML div_id;templabel.style.visibility visible;templabel.style.top _style_top * 20 px;templabel.style.positionabsolute$(choose).appendChild(templabel);_style_top}}//添加完choose层的元素后更新show层的元素if ($(choose).firstChild) {show($(choose).firstChild.innerHTML);$(choose).firstChild.style.backgroundColor ccc;count 0;} else {show();$(choose).innerHTML couldnt find;}} else {show();}}
三监听键盘的↑和↓事件调用键盘事件处理函数在label前后兄弟节点键来回移动。并更新右侧详细信息页中的内容。
1使用body οnkeydοwnhandleUpAndDown()为整个页面添加键盘监听事件。body οnkeydοwnhandleUpAndDown()
2编写handleUpAndDown(evt)键盘响应函数这里需要注意的是charCode38为键盘↑键charCode40为键盘↓键。当charCode为38时调用moveUp()函数当charCode为40时调用moveDown()函数。moveDown()和moveUp()各自实现左侧Label上下移动效果。
function moveUp() {var labels document.getElementsByTagName(label);if (count ! 0) {labels[count].style.backgroundColor #fff;labels[count - 1].style.backgroundColor #ccc;show(labels[count - 1].innerHTML);$(input).value labels[count - 1].innerHTML;count count - 1;}}function moveDown() {var labels document.getElementsByTagName(label);if (count ! labels.length - 1) {labels[count].style.backgroundColor #fff;labels[count 1].style.backgroundColor #ccc;show(labels[count 1].innerHTML);$(input).value labels[count 1].innerHTML;count count 1;}}function handleUpAndDown(evt) {evt (evt) ? evt : event;var charCode (evt.charCode) ? evt.charCode :((evt.which) ? evt.which : evt.keyCode);if (charCode 38)moveUp();if (charCode 40)moveDown();}
3使用οnkeyuphandleKeyUpEvent(event)为Input输入框绑定键盘事件代码如下input typetext nameinput idinput maxlength10 stylewidth:100px;height:20px;οnkeyuphandleKeyUpEvent(event)
输入你想查找的指令,可按键盘↑和↓移动指令
4编写handleKeyUpEvent(evt)避免用户在Input输入框输入文字时受到刚才添加的键盘事件干扰。
function handleKeyUpEvent(evt) {//用来处理键盘事件的函数evt (evt) ? evt : event;var charCode (evt.charCode) ? evt.charCode :((evt.which) ? evt.which : evt.keyCode);if (charCode 38 || charCode 40 || charCode 37 || charCode 39) {} else {chooseMenu();}}