Python 知识点,小用法

1.匿名函数

lamdba x:x**2
def f(x):
    return x**2

g = lambda x:x**2

    print map(f,range(10))
    print map(g,range(10))

2.map函数

    print map(f,range(10))
    print map(g,range(10))

3.排序函数sorted

    dic1 = {
        9:2,
        4:6,
        8:1,
        ‘a‘:10
    }

    print dic1

    print  sorted(dic1.items())
    print  sorted(dic1.items(),key=lambda x:x[0])
    print  sorted(dic1.items(),key=lambda x:x[1])

4.迭代器
http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/00143178254193589df9c612d2449618ea460e7a672a366000
迭代器仅仅记录一个开始,和一个结束,和当前位置,每循环一次就往下走一步
好处:节省内存空
其中:xrange(),xreadlines()

import time
def run():
    print ‘test 1‘
    time.sleep(1)
    yield 1   ##这个相当于reture 1 ,但是yield 1 的话,当你再次执行x.next()时还可以回来从这个地方开始执行下面的内容,直到遇到下一个yield再退出
                # 而reture退出之后是无法回来再执行下面的内容
    print ‘test 2‘
    time.sleep(1)
    yield 2

    print ‘test 3‘
    time.sleep(1)
    yield 3

    print ‘test 4‘
    time.sleep(1)
    yield 4

    print ‘test 5‘

task = run()

task.next()

print "--------do sth 1 -----------"
task.next()
print "--------do sth 2 -----------"

task.next()
print "--------do sth 3 -----------"

task.next()
print "--------do sth 4 -----------"

task.next()
print "--------do sth 5 -----------"

task.next()    ##这个时候会出现StopIteration报错

##好处,可以让其和主程序来回切换取调用其他内容

5.正则表达

>>> import re
>>> a = ‘asdasd3as9#23_454/45(*_dfdf_\\~r)3‘
>>> m = re.search(‘dfd‘,a)
>>> print  m
<_sre.SRE_Match object at 0x10221a030>
>>> print m.group()
dfd
>>>
>>>
>>> m = re.findall(‘[a-zA-Z]+‘,a)  ##查找所有字母,元组的格式返回
>>> print m
[‘asdasd‘, ‘as‘, ‘dfdf‘, ‘r‘]
>>>
>>>
>>> m = re.split(‘\d+‘,a)
>>> print m
[‘asdasd‘, ‘as‘, ‘#‘, ‘_‘, ‘/‘, ‘(*_dfdf_\\~r)‘, ‘‘]
>>>
>>>
>>> m = re.sub(‘\d+‘,"|",a,count=3)
>>> print m
asdasd|as|#|_454/45(*_dfdf_\~r)3
>>>
>>> a
‘asdasd3as9#23_454/45(*_dfdf_\\~r)3‘
>>>

>>> a=‘192.173.12.121‘   ##匹配ip
>>> a
‘192.173.12.121‘
>>> re.search(‘(\d+)(\.\d+){3}‘,a).group()
‘192.173.12.121‘

6.递归函数

def calc(n):
    print ‘------------->‘,n
    if n > 0:
        calc((n/2))

calc(20)

-------------> 20
-------------> 10
-------------> 5
-------------> 2
-------------> 1
-------------> 0
时间: 2024-12-28 14:08:07

Python 知识点,小用法的相关文章

Python回调函数用法实例详解

本文实例讲述了Python回调函数用法.分享给大家供大家参考.具体分析如下: 一.百度百科上对回调函数的解释: 回调函数就是一个通过函数指针调用的函数.如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数.回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应. 二.什么是回调: 软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用.回调和异步调用.同步调用

Python内建函数enumerate()用法及在for循环应用

Python 内建函数enumerate() 由于这个单纯很长,不容易记住,用法还是比较广泛的,下面讲述Python内建函数enumerate()用法. 1,实例 enumerate(sequence, [start=0]) 2,enumerate()用法 >>>seasons = ['Spring', 'Summer', 'Fall', 'Winter']>>> list(enumerate(seasons))[(0, 'Spring'), (1, 'Summer')

计算机二级python 知识点篇(组合数据类型)

计算机二级python 知识点篇(组合数据类型) 集合.列表.字符串.元组.字典 集合类型 : 集合 (无序.无相同元素) 序列类型 :列表.字符串.元组 (有序.元素之间不排他) 映射类型 :字典 集合 集合概述 集合中元素不可重复, 元素类型只能是固定数据类型,例如: 整数. 浮点数. 字符串. 元组等, 列表. 字典和集合类型本身都是可变数据类型, 不能作为集合的元素出现 >>>S = {1010, "1010", 78.9} >>>type(

Python之pandas用法

Python之pandas用法 导入 import pandas as pd Series 用pandas的Series函数从数组或列表中创建一个可自定义下标(index)并自动维护标号索引的一维数组 a = pd.Series([0.25, 0.5, 0.75, 1.0]) print(a) b = pd.Series([0.25, 0.5, 0.75, 1.0], index=['a', 'b', 'c', 'd']) # 自定义下标 print(b) c = pd.Series({'a':

python &#160; __name__==&#39;__main__&#39; 用法

python 文件的后缀为.py,比如 name.py python 文件可以直接执行,也可以被导入.调用,比如import name; script 1: #!/bin/python # Filename:name.py if __name__=='__main__':     print 'This program is being run by itself' else:     print 'I am being imported from another module' script

python之函数用法capitalize()

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之函数用法capitalize() #capitalize() #说明:将字符串的第一个字母变成大写,其他字母变小写. ''' capitalize(...) S.capitalize() -> string Return a copy of the string S with only its first character capitalized. ''' #案例 str='xiaoden

python之函数用法setdefault()

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之函数用法setdefault() #D.get(k,d) #说明:k在D中,则返回 D[K],如果k不在D中,则返回d值 #D.get(k,d), also set D[k]=d if k not in D ''' >>> help(dict.setdefault) Help on built-in function setdefault: setdefault(...) D.set

python之函数用法islower()

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之函数用法islower() #http://www.runoob.com/python/att-string-islower.html #islower() #说明:检测字符串是否都由小写字母组成 str = "THIS is string example....wow!!!" print str.islower()#False str = "this is string

python之函数用法xrange()

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之函数用法xrange() #xrange() #说明:返回一个生成器 #xrange做循环的性能比range好,尤其是返回很大的时候.除非要返回一个列表,则用range. ''' class xrange(object) | xrange(stop) -> xrange object | xrange(start, stop[, step]) -> xrange object | | Li

python之函数用法startswith()

# -*- coding: utf-8 -*- #python 27 #xiaodeng #python之函数用法startswith() #http://www.runoob.com/python/att-string-startswith.html #startswith() #说明:返回布尔值,用于检查字符串是否是以指定子字符串开头,如果是则返回 True,否则返回 False. ''' startswith(...) S.startswith(prefix[, start[, end]]