python
constant_zyh188
世界上没有穷人,只有懒人
展开
-
python 世界
什么是pythonPython 是一门优雅而健壮的编程语言,它继承了传统编译语言的强大性和通用性,同时也借鉴了简单脚本和解释语言的易用性,它可以帮你完成工作,而且一段时间后,你还能看明白自己写的这段代码,你会对自己如此快地学会它和它强大的功能感到十分的惊讶,更不用提你已经完成的工作了,只有你想不到,没有python做不到。Python的起源Pyhon 在1989年年底被Guid原创 2016-01-18 09:52:48 · 325 阅读 · 0 评论 -
python 模块概述
模块,用一砣代码实现了某个功能的代码集合。 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合。而对于一个复杂的功能来,可能需要多个函数才能完成(函数又可以在不同的.py文件中),n个.py文件组成的代码集合就称为模块。使用模块有什么好处:1:大大提高了代码的可维护性,次,编写代码不必从零开始。当一个模块编写完毕,就可以原创 2016-02-01 14:27:19 · 479 阅读 · 0 评论 -
python 递归和装饰器
一:递归特点递归算法是一种直接或者间接地调用自身算法的过程。在计算机编写程序中,递归算法对解决一大类问题是十分有效的,它往往使算法的描述简洁而且易于理解。递归算法解决问题的特点:(1) 递归就是在过程或函数里调用自身。(2) 在使用递归策略时,必须有一个明确的递归结束条件,称为递归出口。(3) 递归算法解题通常显得很简洁,但递归算法解题的运行效率较低。所以原创 2016-02-01 20:04:19 · 738 阅读 · 0 评论 -
python 内置模块
一:os模块,用于提供系统级别的操作os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cdos.curdir 返回当前目录: ('.')os.pardir 获取当前目录的父目录字符串原创 2016-02-16 21:38:00 · 3137 阅读 · 0 评论 -
python 算法基础查找和二维数组转换
算法基础:生成一个4*4的2维数组并将其顺时针旋转90度array=[[col for col in range(4)] for row in range(4)] #初始化一个4*4数组#array=[[col for col in 'abcde'] for row in range(5)]for row in array: #旋转前先看看数组长啥样 print(row)pr翻译 2016-02-17 15:12:36 · 1129 阅读 · 0 评论 -
python 数据类型及运算符
在说数据类型之前我们简单来说一下对象Python 使用对象模型来存储数据,构造任何类型的值都是一个对象。所有的python 对象都拥有三个特性:身份,类型和值。身份:每一个对象都有一个唯一的身份标识自己,任何对象的身份可以使用内建函数id()得到,这个值可以被认为是该对象的内存地址。类型:对象的类型决定了譔对象可以保存什么类型的值,可以进行什么样的操作,以及遵循什么样的规则,可以使原创 2016-01-18 17:45:27 · 1046 阅读 · 0 评论 -
python 文件操作
Linux下万物皆文件,所以处处都要遇到对文件的处理操作,win 系统下也一样,更何况python 的跨平台如此强大了:今天我们来了解python 对文件的操作1:读文件要以读文件的模式打开一个文件,使用python 内置函数open(),格式如下f= open("test.open.txt",'r') ### open函数("文件名","打开文件使用的模式) 如果文件不原创 2016-01-25 20:52:42 · 409 阅读 · 0 评论 -
python 面向对象编程-基础
首先先来对比一下之前学习的内容:面向过程:根据业务逻辑从上到下写垒代码函数式:将某功能代码封装到函数中,日后便无需重复编写,仅调用函数即可面向对象:对函数进行分类和封装,让开发“更快更好更强...”面向过程编程最易被初学者接受,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,即:将之前实现的代码块复制到现需功能处,再来回忆一下当初学习时的监控报警的代码:原创 2016-03-08 17:07:34 · 552 阅读 · 0 评论 -
python socket
一:socketsocket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求。socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,对于文件用【打开】【读写】【关闭】模式来操作。socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的原创 2016-03-09 13:32:16 · 473 阅读 · 0 评论 -
python 面向对象编程-进阶篇
一:类的成员类的成员可以分为三大类:字段、方法和属性1:字段字段包括:普通字段和静态字段,他们在定义和使用中有所区别,而最本质的区别是内存中保存的位置不同,普通字段属于对象静态字段属于类字段的定义与使用class Province: # 静态字段 country = '中国' def __init__(self, na原创 2016-03-09 10:23:26 · 504 阅读 · 0 评论 -
python 线程、进程和协程
一:线程基础:线程与进程的不同之处在于,它们共享状态、内存和资源。对于线程来说,这个简单的区别既是它的优势,又是它的缺点。一方面,线程是轻量级的,并且相互之间易于通信,但另一方面,它们也带来了包括死锁、争用条件和高复杂性在内的各种问题。幸运的是,由于 GIL 和队列模块,与采用其他的语言相比,采用 Python 语言在线程实现的复杂性上要低得多。1:线程分为5种状态Th原创 2016-03-21 14:29:15 · 640 阅读 · 0 评论 -
下载和安装python
Python 官网 https://www.python.org这里可以下载python 最新的源码,二进制文档,当然也包括安装的方法,这里就不做详细介绍了 由于python的跨平台特点,所以python 支持在很多平台安装及运行1. Unix (Solaris, Linux, FreeBSD,AIX, HP/UX, SunOS, IRIX, 等等。)2.原创 2016-01-18 11:38:03 · 524 阅读 · 0 评论 -
python list方法
列表的使用方法:1: list --à list的类方法classlist(object): """ list() -> new empty list ### 一个空列表 list(iterable) -> newlist initialized from iterable's items转换为一个新列表 """ 2:ap原创 2016-01-22 14:29:46 · 426 阅读 · 0 评论 -
python 正则表达式
正则表达式简介:正则表达式是用于处理字符串的强大工具,拥有自己独特的语法以及一个独立的处理引擎,效率上可能不如str自带的方法,但功能十分强大。得益于这一点,在提供了正则表达式的语言里,正则表达式的语法都是一样的,区别只在于不同的编程语言实现支持的语法数量不同;但不用担心,不被支持的语法通常是不常用的部分。如果已经在其他语言里使用过正则表达式,只需要简单看一看就可以上手了。re 模块使 Pyt原创 2016-02-16 21:21:49 · 412 阅读 · 0 评论 -
python 迭代器与生成器
一:迭代器迭代器是访问集合内元素的一种方式。迭代器对象从集合的第一个元素开始访问,直到所有的元素都被访问一遍后结束。迭代器不能回退,只能从头到尾往前进行迭代。这并不是什么很大的缺点,因为人们几乎不需要在迭代途中进行回退操作。迭代器也不是线程安全的,在多线程环境中对可变集合使用迭代器是一个危险的操作。但如果小心谨慎,或者干脆贯彻函数式思想坚持使用不可变的集合,那这也不是什么大问题。对原创 2016-02-01 14:24:23 · 347 阅读 · 0 评论 -
python str 方法
字符串的方法较多,字符串也是python中最为重要的一个数据类型1:str --à转换为str 类型classstr(object): """ str(object='') -> str str(bytes_or_buffer[, encoding[,errors]]) -> str Create a new string objec原创 2016-01-21 21:40:10 · 8168 阅读 · 0 评论 -
python 条件判断与循环
条件判断:当我们开始编写一个程序时,肯定会遇到要求程序能根据不同的条件做出相应的动作,这时我们就需要使用计算机语言的最基本的逻辑控制if.else语句来实现了Python 中的if 语句由三部分组成,关键字本身,用于判断结果真假的条件表达式,以及当表达式为真或者非零时执行的码块。1:格式如下:ifexpression: expr_true_suiteif 语句的e原创 2016-01-25 21:02:26 · 654 阅读 · 0 评论 -
运行python
初学者可以通过最简单的交互式方式来启动解释器,每次输入一行python代码,然后解释器执行,当你足够熟悉以后,可以直接编写python脚本,通过指定解释器来调用python解释器,当然,你也可以使用集成开发环境中的图形用户界面运行python,这些集成开发的程序带来了快捷,方便的使用体验。Hello World 程序(以下测试我们都将使用python的3.x版本)使用python 内置的p原创 2016-01-18 12:02:22 · 483 阅读 · 0 评论 -
python 变量
Python 使用 “=” 做赋值操作符变量名 = 值变量名:必须是大小写英文,数字或_的任意组合,且不能以数字开头另外python 内置关键字不能做为变量名值可以是任意数据类型例:a = 5b = 'helloworld'c =[1,2,3,4,]d = {'zhang':23,'li':18}我们来执行一下看print(type(a))原创 2016-01-18 15:03:24 · 380 阅读 · 0 评论 -
python 脚本风格
每个人都有自己的编程风格,本文的风格介绍只做指南作用,没有强制概念,当然,良好的脚本内容可读性更高1:起使行2:模块文档3:模块导入4:变量定义5:类定义6:函数定义7:主程序1:解释器:通常只有类unix系统中需要,指定解释器就能够仅输入脚本名字来执行脚本,无需直接调用解释器2:模块说明:简要介绍模块及脚本的功能及重要全局变量及含义,模块可通过mo原创 2016-01-18 15:26:52 · 1150 阅读 · 0 评论 -
python 内部执行原理
过程概述:Python 先对脚本内容做词法和语法分析,然后把代码(.py)文件,交给字节码虚拟机,然后虚拟机一条一条执行字节码指令,从而完成程序的执行。字节码在python 虚拟机程序里对应的是PyCodeObject对象。.pyc文件是字节码在磁盘上的表现形式。Pyc文件PyCodeObject对象的创建时机是模块加载的时候,即import。Pythontest.py会对翻译 2016-01-18 16:44:46 · 563 阅读 · 0 评论 -
python 字符编码
字符编码ASCII :单字节编码,而单字节可以表示256个不同的字符,因为计算机只能处理数字,如果要处理文本,就必须先把文本转换为数字才能处理。最早的计算机在设计时采用8个比特(bit)作为一个字节(byte),所以,一个字节能表示的最大的整数就是255(二进制11111111=十进制255),如果要表示更大的整数,就必须用更多的字节。比如两个字节可以表示的最大整数是65535,4个字节可转载 2016-01-18 18:00:27 · 409 阅读 · 0 评论 -
python浅拷贝与深拷贝
对于数字,字符串,赋值,浅拷贝,深拷贝无意义,因为其永远指向一个内存地址:下面分别对这些数据类型进行测试importcopy######## 数字a = 1a1 = a ###赋值a2 = copy.copy(a) ###浅拷贝a3 = copy.deepcopy(a) ###深拷贝原创 2016-01-19 10:20:44 · 465 阅读 · 0 评论 -
python 函数
Python的函数是由一个新的语句编写,即def,def是可执行的语句--函数并不存在,直到Python运行了def后才存在。函数是通过赋值传递的,参数通过赋值传递给函数函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数原创 2016-01-19 13:19:26 · 804 阅读 · 1 评论 -
python int方法
整数类型中int 的使用方法同样目地的使用方法只列出其作用,还有部分未测试出到底为了实现什么样的目标,测试完已崩溃。为什么很多种方法结果一样,为什么很多种结果莫名其妙........... 详细 bit_lengthdef bit_length(self): # real signature unknown; restored from __doc__ """原创 2016-01-19 17:35:06 · 3727 阅读 · 0 评论 -
python float类型使用方法
今天我们来看看python 中float 方法1: 获取值的最简化结果defas_integer_ratio(self):# real signatureunknown; restored from __doc__ """ float.as_integer_ratio() -> (int,int) Return a pair of inte原创 2016-01-21 15:25:45 · 12713 阅读 · 0 评论 -
python tuple 方法
元组:元组的可使用方法没有list 和str这么多:1: tuple ---: 类方法,转换为元组类型classtuple(object): """ tuple() -> empty tuple tuple(iterable) -> tupleinitialized from iterable's items If the arg原创 2016-01-22 14:46:54 · 313 阅读 · 0 评论 -
python dict 方法
说字典方法之前,我们先来说几个巧用字典取值的方法1:d = {'name':'zhang','age':25,'job':'IT'}### 第一种方法for key1in d: print(key1,d[key1])#### 输出结果age 25job ITname zhang 2:d = {'name':'zhang','a原创 2016-01-22 16:03:40 · 566 阅读 · 0 评论 -
python set集合
说明:集合对象是一组无序排列的哈希的值,集合成员可以做字典中的键;集合支持用in 和not in 操作符检查成员,由len()内建函数得到集合的大小,用for 循环迭代集合的成员,但是因为集合无序,所以不能通过创建索引或执行切片操作,也没有键可以用来获取集合中元素的值。除无序以外,集合内的元素不能重复集合分为可变集合(set)和不可变集合(forzenset)。对于可变集合,可以用来添加和原创 2016-01-25 11:30:18 · 375 阅读 · 0 评论 -
python collections 系列
Collections :collections 模块包含了内建类型之外的一些有用的工具,例如 counter,defaultdict,orderedDict,deque,以及nametuple ,其中counter,deque以及defaultdict是最常用 的类1:计数器(counter)如果你想统计一个单词在给家的序列中一共出现了多少次,诸如此类的操作就可以用到counter,来看原创 2016-01-25 20:37:10 · 596 阅读 · 0 评论 -
linux环境下tab 自动补全功能
也许你是老油条,但是用惯了开发工具,在linux下也会有一脸懵b的时候,然后各种dir(),help(),查方法,今天要介绍的就是更快捷的方法。大家都比较喜欢shell环境下,随便敲下自己想操作命令的前1个或几个字母,就可以使用tab键快速的补全剩余的命令,或查看这些字母开头的所有命令,实际上在python shell中,我们也可以实现这个功能,下面我们来一起看一下:1:首先我们需要得到p原创 2017-03-14 16:38:16 · 18058 阅读 · 0 评论