列表推导式
类似 data=[x+1 for x in range(10)]执行结果就是 [1,2,3,4,5,6,7,8,9,10]
还有 even_numbers=[x for x in range(10) if x%==0] 执行结果【0,2,4,6,8】
 
生成器表达式(generator expression)
用法与列表推导式类似
ever_number=(x for x in range(1000) if x%==0) 每次处理一个对象,节省内存
 
字符串string
不可修改,获得的结果都是其新的拷贝,常用函数
 

字符串前面可以有修饰符
比如mystring=u“hello”   u代表Unicode字符
mystring=r'c:\program\file'  r代表raw字符,就是字符串不经过转义等
格式化字符串
>>> '%s is number %d'  %(s[:6],1)
输出list类型s[0]-s[5] is number 1
 
 
 
 
常见异常exception
 

 
函数
定义函数的时候可以直接指定默认值
例如:def check_web_server(host,port=80,path='/')
 
*args 和**kwargs
一般来说,函数调用或者声明中,* 代表元组,**代表字典
例如 check_web_server('127.0.0.1','8000','admin/')
等同于host_info=('127.0.0.1','8000','admin/')
check_web_server(*host_info)
如果host_info=[host:'127.0.0.1',port:'8000',path:'admin/']
那就是check_web_server(**host_info)
 
变长参数也可以使用*args或者**kwargs来传递
例如 def f(*args,**kwargs):
    这样的函数可以按照 f(),f(a,b,c),f(a,b,foo=c,bar=d)来调用
 
django 装饰器

def deco(func):  
    print("deco")  
    return func  
 
@deco  
def foo():  
    print("foo")  

foo()  等同于deco(foo)
执行结果 为
deco
foo
 
面向对象编程
 
class AddressBook(object):
    version=0.1
    def __init__(self,name,phone):
        self.name=name
        self.phone=phone
方法必须带上self对象,python支持动态实例属性,即没有在定义里声明的属性也可以使用
例如 john=AddressBook(‘john’,‘111111’)
john.address='beijing'  也是允许的
 
继承
class EmployeeAdressBook(AdressBook):
     def __init__(self,name,phone,id,social):
            AdressBook.__init__(self,name,phone)
            self.id=id
            self.ssn=social
继承需要显式调用父类方法
 
python 正则表达式
>>> import re
>>> m=re.serch(r'foo',seafood)
>>> print m
<_sre.SRE_Match object at ...>
>>>m.group()
'foo'
    
 
    

python 基础知识整理的更多相关文章

  1. Python基础知识整理

    //占位,缓缓写完 http://www.xuebuyuan.com/2117676.html 迭代器与生成器http://www.cnblogs.com/wilber2013/p/4652531.h ...

  2. Kali Linux渗透基础知识整理(四):维持访问

    Kali Linux渗透基础知识整理系列文章回顾 维持访问 在获得了目标系统的访问权之后,攻击者需要进一步维持这一访问权限.使用木马程序.后门程序和rootkit来达到这一目的.维持访问是一种艺术形式 ...

  3. python 爬虫与数据可视化--python基础知识

    摘要:偶然机会接触到python语音,感觉语法简单.功能强大,刚好朋友分享了一个网课<python 爬虫与数据可视化>,于是在工作与闲暇时间学习起来,并做如下课程笔记整理,整体大概分为4个 ...

  4. Python基础知识详解 从入门到精通(七)类与对象

    本篇主要是介绍python,内容可先看目录其他基础知识详解,欢迎查看本人的其他文章Python基础知识详解 从入门到精通(一)介绍Python基础知识详解 从入门到精通(二)基础Python基础知识详 ...

  5. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  6. python基础知识(二)

    以下内容,作为python基础知识的补充,主要涉及基础数据类型的创建及特性,以及新数据类型Bytes类型的引入介绍

  7. Kali Linux渗透基础知识整理(二)漏洞扫描

    Kali Linux渗透基础知识整理系列文章回顾 漏洞扫描 网络流量 Nmap Hping3 Nessus whatweb DirBuster joomscan WPScan 网络流量 网络流量就是网 ...

  8. python 基础知识(一)

    python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...

  9. python基础知识讲解——@classmethod和@staticmethod的作用

    python基础知识讲解——@classmethod和@staticmethod的作用 在类的成员函数中,可以添加@classmethod和@staticmethod修饰符,这两者有一定的差异,简单来 ...

随机推荐

  1. 【C++笔记】析构函数(destructor)

    “析构函数”是构造函数的反向函数. 在销毁(释放)对象时将调用它们. 通过在类名前面放置一个波形符 (~) 将函数指定为类的析构函数.   声明析构函数   析构函数是具有与类相同的名称但前面是波形符 ...

  2. logging 简单使用

    import logging logging.basicConfig( level=logging.DEBUG, format='[%(asctime)s <%(filename)s :%(li ...

  3. DIV内文字两端对齐

    div{ text-align: justify; text-justify:inter-ideograph; }

  4. Pytorch划分数据集的方法

    之前用过sklearn提供的划分数据集的函数,觉得超级方便.但是在使用TensorFlow和Pytorch的时候一直找不到类似的功能,之前搜索的关键字都是"pytorch split dat ...

  5. Ansible-----include

    什么是include 在ansible中,我们可以通过include,在一个playbook中包含另一个文件,以便实现代码的重复利用. include_tasks模块 include_tasks模块用 ...

  6. day09 详解内存管理机制

    """ 今日内容:详解内存管理 1.引用计数 在内存中为了对变量的值进行标记从而方便管理,采用引用计数的方式对变量进行标记. (1)如果变量的值被引用一次,那么该变量的引 ...

  7. C语言中 if 和 else if 的区别

    先看代码:我们本意是对i不同的值有不同的判断. #include<stdio.h> int main(void) { ; ) { i++; printf("%d\n", ...

  8. python操作redis命令

    Python操作redis from redis import StrictRedis, ConnectionPoolredis_url="redis://:xxxx@112.27.10.1 ...

  9. Java定时清理过期文件

    项目中经常需要自动定时去清理一些过期文件,这个其实Java实现挺简单的,核心部分就2个,一个定时任务,一个递归删除文件,不过前提是你的文件放在以“2018-12-05”这样命名的文件夹下,下面直接上核 ...

  10. python学习记录20181220

    1.pycharm中,有个快捷键,输入完成后 按Ctrl+Alt+L就可以自动添加空格