python函数chm
① python新手应该怎么学习更好
Python是一中面向对象的编程语言,语法简洁而清晰,具有丰富和强大的类库。对于初学编程者来说,首选Python是个非常棒的选择。
3、加入Python讨论群,推荐个不错的qun- 227-435-450态度友好笑眯眯(很重要,这样高手才会耐心纠正你错误常识)。很多小问题,纠结许久,对方一句话点播思路,就可以使你绕很多弯路。
每天的编码必不可少,既然选择学习编程,学习Python,坚持编码应该是必须做到的。没有代码积累,要写出高质量的代码,几乎不可能。
4、要善于总结。如果你光学不练,这是不好的,如果你不善于总结,这也是不好的。语言都是用不上的时候开始学习。都是用的上的时候开始复习。要是用得上的时候开始学习,除非你抗压能力一流,不然我想你心情烦躁,效果会很不好的。学习的时候多总结一下,复习的时候可以翻出来看看,这样就不至于完全荒废了,并且恢复相当快速。
学习编程不要太排斥英文。如果让你直接从英文开始学习,我想这个很难,但是如果用英文版本开始复习,这个就很好了。
5、保持兴趣,用最简单的方式解决问题,什么底层驱动,各种交换,留给大牛去写吧。我们利用已经有的包完成。
俗话说的好:兴趣是最好的老师
6、在写过不少基础代码之后,可以去各大Python相关的网站阅读别人的代码,多阅读别人的也是提高自己的编码水平的很好途径,同时,有把自己的代码分享给别人阅读,一边互相交流促进。
教别人的时候,其实你已经自己再次思考一次了。
最后祝你学有所成,希望对你有所帮助。
② python 帮助文档 怎么使用
python帮助文档是chm格式的(即英语“Compiled Help Manual”的简写,即“已编译的帮助文件”。)
CHM是微软新一代的帮助文件格式,利用HTML作源文,把帮助内容以类似数据库的形式编译储存。
python帮助文档在python安装目录的doc文件夹下,双击即可打开。
③ 如何从零开始学python
1、学习的时候,我们都是要从Python的基础语法开始学习 ,了解什么是Python的变量 什么是循环 什么是函数,什么是模块。类等等。总之,基础是学习以后高级开发的基石。
这个阶段可以,选择一些经典书籍或者视频进行学习。
书籍可以看看《python快乐编程—基础入门》这本书,是针对零基础学生来编写的书。
2、在学习完基础语法的时候,你也对python有了一定程度的了解了,也知道Python有很多的学习方向,比如说数据采集方向(爬虫),或者Web开发方向,也可能是最近特别火热的人工智能方向。每个方向所需要的技术都是不尽相同的,所以在我们学习完成Python的基础语法之后,一定要慎重选择自己之后的进阶方向。
3、在进阶阶段,建议以最新的python视频学习为主,相关书籍为辅,这个阶段主要是学的技术是最新的,不要给自己留一个学完之后技术已经过时的惨败后果。
此外还有一些小小的学习技巧分享给大家,希望大家调整好心态,坚持下去!
1.作为小白刚接触编程,理解起来慢很正常。不能理解的东西,也不要死磕太久,在不断的练习中,你对代码的理解会越来越深。
2.个人认为,人按学习能力可以暴力分为:上手快&忘得快,上手慢&理解深,上手快&理解深。好了,第三类人我就不想多说什么了。。。相信很多小伙伴都是第二类人!
3. 遇到问题,别死磕,多用搜索引擎,多看大牛的博客。
4. 觉得某个知识点时间花得久了,无非是想短时间投入,获得较大的成就感,或者说想一帆风顺敲代码,别遇到什么bug。不存在的。而且,一般情况下,花越多时间理解的知识点,花越多时间改好的bug,不是会获得越大的成就感才对嘛?!
④ 如何使用sphinx生成Python第三方模块的文档
在使用Python的过程中,无疑我们经常需要下载安装第三方模块(如何安装:URL),而安装后我们必然会面临一个使用的问题,这时候我们需要阅读相关的文档。可是我们会发现下载的第三方模块目录的doc文件夹下只有一个conf.py文件和一些后缀为rst的文件,文档在哪里呢?
其实Python提供了专用的文档生成工具,有了这些工具就可以很方便地生成我们需要的文档了。本文就是介绍如何使用一些第三方工具(sphinx)来生成这些文档。
1.下载并安装Docutils:http://docutils.sf.net/。
2.下载并安装sphinx :http://pypi.python.org/pypi/Sphinx/1.1。Sphinx 是用来生成文档的,设计的初衷是为了生成python的文档。可以生成html、htmlhelp/chm、qthelp、devhelp、latex、man 等格式的文档。
3.在Widnows环境下,打开命令提示符,使用cd /d 命令将当前目录切换至Sphinx目录,运行命令:python sphinx-build.py -b html sourcedir builddir,其中,-b后面的字符串用于控制输出文档的格式,默认为html。sourcedir表示文档来源文件夹(一般就是包含conf.py文件的那个文件夹),builddir表示生成文档的目标文件夹。(注:在Windows环境下,请不要将sphinx文件夹、sourcedir 和builddir 设置成包含中文的路径,否则容易出现一些默名其妙的错误,例如编码错误。)
⑤ windows环境的python的环境变量
默认情况下,在windows下安装python之后,系统并不会自动添加相应的环境变量。此时不能在命令行直接使用python命令。
1. 首先需要在系统中注册python环境变量:假设python的安装路径为c:\python27,则修改我的电脑->属性->高级->环境变量->系统变量中的PATH为:
(为了在命令行模式下运行Python命令,需要将python.exe所在的目录附加到PATH这个环境变量中。)
PATH=PATH;c:\python27
上述环境变量设置成功之后,就可以在命令行直接使用python命令。或执行"python *.py"运行python脚本了。
2. 此时,还是只能通过"python *.py"运行python脚本,若希望直接运行*.py,只需再修改另一个环境变量PATHEXT:
PATHEXT=PATHEXT;.PY;.PYM
3. 另外,在使用python的过程中,可能需要经常查看某个命令的帮助文档,如使用help('print')查看print命令的使用说明。默认安装的python无法查看帮助文档,尚需进行简单的配置:
在python安装目录下,找到python272.chm,使用hh -decompile .python272.chm将其反编译出来,然后将其所在的目录加入到上面提到的PATH环境变量中即可。
4. 如何使Python解释器能直接import默认安装路径以外的第三方模块?
为了能import默认安装路径以外的第三方的模块(如自己写的模块),需要新建PYTHONPATH环境变量,值为这个模块所在的目录。
⑥ 如何让python调用C和C++代码
如何让python调用C和C++代码
安装python后,会有一个chm格式的python手册。要搞明白如何让python调用C/C++代码(也就是写python的 extension),你需要征服手册中的
<<Extending && embedding>>厚厚的一章。在昨天花了一个小时看地头晕脑胀,仍然不知道如何写python的extension后,查阅了一些其他 书籍,最终在<<Python Programming On Win32>>书中找到了教程。
下面记录一下如何在visual studio 2005中,写一段C/C++的MessageBox代码,然后提供后python调用,最后的结果当然是显示一个MessageBox.
1. 首先要明白的是,所谓的python扩展(也就是你提供给python的c/c++代码,不一定是c/c++代码,可以是其他语言写的代码)是一个 dll,并且这个dll放在本机python安装目录下的DLLs目录下(譬如我机器上的路径是:F:\Program Files\Python25\DLLs),假如我们接下来要写的扩展mole名为mb,python调用的代码为: import mb
mb.showMsg("Python's really amazing, I kindda love it!")
python怎么找到我们的mb模块呢?就是上面说的,我们要生成一个mb.dll,然后拷贝到Dlls目录下面,为了区别普通的dll和python专用扩展的dll,我们的 mb.dll修改成mb.pyd(python dll)
2. 搭建环境,我们要使用python提供的c头文件和lib库来进行扩展的开发。 在vs 2005下点击菜单 "工具"->"选项", 打开选项对话框,选择"项目和解决方案->VC++目录", 然后在右边"显示以下内容的目录"得comboBox上选择"包含文件”,添加python的include目录(我的机器上是"F:\Program
Files\Python25\include"),然后选择库文件,添加python的libs目录(我的机器上是"F:\Program Files\Python25\libs")。
既然扩展是一个dll,接下来我们要建立一个“动态链接库”工程,然后开始写代码:
#include <python.h> //python.h是包含python一些定义的头文件,在python的include目录下 /*
我的python版本是2.5, 因为安装python后它没提供debug下的lib库文件,因此你必须生成release版的dll,
想要生成dll版本的,你要到python官网上自己去下载python源代码,当然你可以继续生成release版本的dll,但dll中包含调试信息
*/
#pragma comment(lib, "python25.lib")
//先不管
static PyObject* mb_showMsg(PyObject* self, PyObject *args); /*
如果你的扩展是mb,那么必须实现一个initmb函数,并且从dll中导出这个函数,但我们在python中调用import mb时,python会去dll里去调用
initmb函数,这个函数告诉python我们有些什么函数,该怎么告诉python我们有一个showMsg函数呢?下面详解 */
//必须extern "C"下,这样不会在C++编译器里不会更改掉导出的函数名字,我第一次就犯了这样的错误
extern "C" __declspec(dllexport) void initmb() { /*
当调用mb.showMsg("Python's really amazing, I kindda love it!")时, 相当于你告诉python我有一个showMsg函数,我们怎么告诉python去调用我们dll里的mb_showMsg函数呢?技巧就是下面的方式, 定义一个字典数据结构,key => showMsg, value =>mb_showMsg,METH_VARARGS是函数调用方式,仔细查手册吧 */
static PyMethodDef mbMethods[] = { {"showMsg", mb_showMsg, METH_VARARGS},
{NULL, NULL, NULL} /*sentinel,哨兵,用来标识结束*/ };
//告诉python我们的模块名叫mb, 模块包含的函数都在mbMethods字典里 PyObject *m = Py_InitMole("mb", mbMethods); } /*
接下来实现核心功能showMsg */
//第一个self参数我们用不着,具体查手册,第二个参数是python传给我们的参数,它是一个python的参数tuple
static PyObject* mb_showMsg(PyObject* self, PyObject *args) {
//我们的showMsg函数需要的是一个字符串参数 const char* msg = NULL; /*
调用特殊参数解码python传递给我们的参数,s是string,我们传递接收参数的变量地址,
如果你的功能函数需要两个参数,在PyArg_parseTuple后面继续添加接受参数的变量地址,
这个函数的原型是类似printf的不定参数的形式
PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...); */
if (!PyArg_ParseTuple(args, "s", &msg)) return NULL;
//调用MB
int r = ::MessageBox(NULL, "hello", "Caption:Form C mole", MB_ICONINFORMATION | MB_OK);
//返回值
return Py_BuildValue("i", r); }
将上面这段混杂着大量注释的代码拷贝到你的编辑器里,然后编译生成mb.dll,修改后缀成mb.pyd,然后拷贝到python的DLLs目录下,打开idle(python的交互程序),写入代码: import mb
mb.showMsg("Python's really amazing, I kindda love it!")
可以看到弹出来一个MessageBox。
⑦ 学Python应该怎么学
相信大家想学python的小伙伴,在学python的过程中很难,我这里给大家分享一下 python到底该怎么学习:
1.首先我们要了解python是什么:
Python是一种计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。也可以说python是一门胶水语言,也就是我们打LOL里的辅助。
⑧ 在中文版 Windows 上查看 python.chm,如何消除乱码
解决中文Windows上Python chm乱码的难题
在Python 3.6及更高版本的Windows环境中,遇到一个令人头痛的问题——Python的官方文档(python.chm)在中文版Windows上显示异常,中文字符出现乱码。问题的核心在于,Python的HTML字符编码从Unicode转换为Windows-1252,而Windows自带的chm查看器hh.exe却依赖于IE浏览器的内核,而IE并不支持这种编码。
原因解析
Windows chm查看器默认使用GBK编码,而Python 3.6之后的chm文件使用Windows-1252,这导致了hh.exe无法正确识别。即便手动选择西欧(ISO)编码,也只是临时解决当前网页的问题,对hh.exe本身的编码处理并无帮助。此外,hh.exe的菜单功能可能因为编码问题而显得不完整。
寻找解决方案
为了解决这个问题,我们不得不寻找替代方案。例如,Sumatra PDF这样的第三方阅读器,虽然非IE内核,支持cp1252,但遗憾的是,它缺少索引和搜索功能。真正的挑战在于hh.exe的编码受系统区域设置影响,而Windows的全局system locale设计并不灵活,无法为每个进程独立设定。
尝试性地,我们可以使用GetACP()函数查看当前的codepage,但有时可能会得到1252而不是系统默认的936。微软曾提供AppLocale来解决这个问题,但已不再推荐。取而代之的是开源项目Locale Emulator (LE),它允许我们为特定进程设置独立的locale。通过LEInstaller.exe和LEGUI.exe,我们可以为hh.exe设置西欧(cp1252)这样的locale,通过创建快捷方式,用LEProc.exe启动hh.exe,以解决乱码问题。
值得注意的是,对于32-bit系统,可以直接使用hh.exe,但64-bit系统需要使用C:WindowsSysWOW64hh.exe。LE通过API钩子技术实现这一功能,32-bit系统相对容易,而64-bit系统则需要额外的技巧。这是在2018年9月29日的解决方案,随着时间的推移,可能需要更新或寻找新的技术来优化处理。
总结
面对Python chm在中文Windows上的乱码问题,需要跳出常规的框架,采用更灵活的工具和方法。通过Locale Emulator,我们找到了一种可能的路径,尽管64-bit系统处理存在挑战,但解决方案的探索从未停止。持续关注最新技术发展,或许能为我们找到一个更加完美的解决之道。