码迷,mamicode.com
首页 > 编程语言 > 详细

Python基础知识(1)

时间:2016-08-01 23:29:13      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:python基础

运算符

位移:  2<<3    将十进制转成二进制并向左移动3位(增大)

            2 >>3   将十进制转成二进制并向右移动3位(减小)
比较:  <、>、<=、>=、!=

按位或:  |            两个二进制相同位置都为0则得0,其他情况都为1

按位与:  &          两个二进制相同位置都为1则得1,其他情况都为0

按位异或:  ^       两个二进制相同位置不相等时为1,相等为0

运算符优先级: 单目>双目>比较>逻辑

Python数据类型

列表:

L.append(object)、L.extend(object)、L.pop(index)、L.insert(index,object)、L.remove(object)、L.count(object)、L.index(index)、L.sort顺序、L.reverse倒序

ps.index 和 remove要做判断或者错误捕捉

列表切片(li2=li 与 li2=li[:] 不一样,前者若修改列表则两个列表都被修改)

list[:]                      整个列表切片

list[2:5]                  index=2,3,4的元素

list[::-1]=L.reverse

list[::2]                   index为奇数的元素

list[1::2]                 index为偶数的元素

元组

元组不可更改元素

t = (2,)  若只有一个元素必须加逗号

元组切片(t2=t 与 t2=t[:] 一样,一个修改两个都修改)

集合

集合的元素是唯一的、无序的,元素可以是元组,但不能是列表

s.difference = s - s1                  差集

s.intersection = s & s1             交集

             s | s1                            并集

s.add()                                      添加元素

s.update([200,100])                 并不是将列表加到集合,而是将列表里的元素加到集合

s.discard 和 s. remove一样,但元素不存在时discard不会报错                

字典:

d = {‘key‘:‘value‘}

d.keys()                       以列表方式返回字典中的键      

d.values()                    以列表方式返回字典中的值      

d.items()                     以列表方式返回字典中的键值对

d.iterkeys()                 以迭代器对象返回键 

d.itervalues()              以迭代器对象返回值

d.iteritems()               以迭代器对象返回键值对

d.get(key,value)         若key存在返回真实value,不存在则返回value    

d.has_key(key)           若key存在返回true,不存在则返回false

d[key] = ‘value‘          若key存在将更改原来的value,不存在则新增key:value

d.copy()                      可d1 = d.copy(),将d的key:value拷贝到d1

将目录内容解析成迭代器:

for k,v in d.items():

    print k,v

迭代器:

迭代器>列表解析>for循环

for循环可以跟列表是因为它自动将列表转化为迭代器:

li = [1,2,3,4]

it = iter(li)

列表解析:

li = [1,2,3,4]

li2 = [i+1 for i in li ]          等同于

j=0

for i in li:

    li2[j] = i+1

    j += 1


li2 = [i+1 for i in li if i%2 == 0]         等同于

for i in li:

    if i%2 == 0:

        li2.append(i+1)                   ###使用这种形式需要定义li2为一个空列表


li2 = [i+1 for i in li if i%2 == 0 if i >3]  =  Li2 = [i+1 for i in if i%2 == 0 and i >3]                                                                                                                               等同于

for i in li:

    if i%2 == 0 and i>3:

        li2.append(i+1)                   ###使用这种形式需要定义li2为一个空列表


列表空li = []   元组空 t = ()   集合空 s = set()   字典空 d = dict()


Python基础知识(1)

标签:python基础

原文地址:http://11920819.blog.51cto.com/11910819/1833017

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!