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

【python】入门学习(六)

时间:2014-09-02 21:22:15      阅读:393      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   io   使用   strong   ar   for   数据   

type() #检查变量或值得数据类型

>>> type(5)
<class int>

 

序列:包括字符串、元组和列表。序列都可以用索引、切片、len()(计算元素个数)、x in s 判断s中是否包含x

元组: 不可变,如果修改需要大量的复制,即彻底重新赋值

空元组: ()

单个元素的元组: (x,)  #注意一定要有‘,‘

多个元素的元组: (x, y, z) 或 (x, y, z,) #最后的‘,‘可有可无

>>> item = (6, apple, (1,2))
>>> item
(6, apple, (1, 2))
>>> item[0]
6
>>> item[-1]
(1, 2)
>>> item[-1][0]
1
>>> item = ()
>>> type(item)
<class tuple>
>>> item = (5)
>>> type(item)
<class int>
>>> item = (5,)
>>> type(item)
<class tuple>

删除元组的第一个元素

>>> item = (1,2,3,4,5)
>>> item2 = item[1:]
>>> item = item2
>>> item
(2, 3, 4, 5)

元组相关函数:

x in tup #x是否在元组内

len(tup) #元组中的元素数

tup.count(x) #元素x在元组中出现的次数

tup.index(x) #元组中第一个x的索引,如没有则出错

+*  #拼接

>>> item
(2, 3, 4, 5)
>>> item*2
(2, 3, 4, 5, 2, 3, 4, 5)
>>> item + (1,2,3)
(2, 3, 4, 5, 1, 2, 3)

 

列表:可以改变,用[]括起,单元素的末尾不一定要‘,‘

>>> numbers = [1,2,3,4,5,6,7]
>>> numbers
[1, 2, 3, 4, 5, 6, 7]
>>> type(numbers)
<class list>
>>> numbers * 2
[1, 2, 3, 4, 5, 6, 7, 1, 2, 3, 4, 5, 6, 7]
>>> numbers[1:]
[2, 3, 4, 5, 6, 7]
>>> numbers[-3:]
[5, 6, 7]
>>> numbers[0]=100
>>> numbers
[100, 2, 3, 4, 5, 6, 7]

列表元素指向相应的值,而不是包含。用自引用说明:

>>> numbers
[100, 2, 3, 4, 5, 6, 7]
>>> numbers[0] = numbers
>>> numbers
[[...], 2, 3, 4, 5, 6, 7]

列表的相关函数:

s.append(x) #在列表s末尾添加元素x

#numnote.py
def numnote(lst):
    msg = []
    for num in lst:
        if num < 0:
            s = str(num) + is negative
        elif 0 <= num <= 9:
            s = str(num) + is digit
        else:
            break
        msg.append(s)
    return msg
>>> import numnote
>>> numnote.numnote([1,-1,2,22])
[1is digit, -1is negative, 2is digit]

若要逐行打印

>>> for msg in numnote([1,2,3,10]):
    print(msg)

1is digit
2is digit
3is digit
>>> print(\n.join(numnote([1,2,3,10])))
1is digit
2is digit
3is digit

s.extend() #在末尾添加一个序列

>>> lst = []
>>> lst.extend(cat)
>>> lst
[c, a, t]

s.pop(i) #删除并返回索引为i的元素,默认删除最后一个

>>> lst
[c, a, t]
>>> lst.pop()
t
>>> lst.pop(0)
c
>>> lst
[a]

s.remove(x) #删除s中的第一个x元素,但不返回值

>>> lst
[a, h, e, l, l, o, ,, e, v, e, r, y, o, n, e]
>>> lst.remove(e)
>>> lst
[a, h, l, l, o, ,, e, v, e, r, y, o, n, e]

s.reverse() #反转列表元素

>>> lst
[a, h, l, l, o, ,, e, v, e, r, y, o, n, e]
>>> lst.reverse()
>>> lst
[e, n, o, y, r, e, v, e, ,, o, l, l, h, a]

s.sort() #对元素排序 从小到大 要从大到小排序在调用一次reverse就可以了 也可以对列表中的元组排序

>>> lst
[e, n, o, y, r, e, v, e, ,, o, l, l, h, a]
>>> lst.sort()
>>> lst
[,, a, e, e, e, h, l, l, n, o, o, r, v, y]
>>> lst.reverse()
>>> lst
[y, v, r, o, o, n, l, l, h, e, e, e, a, ,]
>>> lst = [(1,2),(1,-1),(2,)]
>>> lst
[(1, 2), (1, -1), (2,)]
>>> lst.sort()
>>> lst
[(1, -1), (1, 2), (2,)]

 

列表解析:用于快速创建列表

>>> [n*n for n in range(1,11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
>>> [n*n for n in range(1,11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
>>> [2*n**3+4 for n in range(1,11)]
[6, 20, 58, 132, 254, 436, 690, 1028, 1462, 2004]
>>> [c for c in pizza]
[p, i, z, z, a]
>>> [c.upper() for c in pizza]
[P, I, Z, Z, A]

使用解析进行筛选:

>>> nums = [-1,0,6,-4,2,5]
>>> result = [n for n in nums if n > 0]
>>> result
[6, 2, 5]

删掉元音

>>> ‘‘.join([c for c in Apple if c.lower() not in aeiou])
ppl

不要方括号也可以,将得到生成器表达式

>>> ‘‘.join(c for c in Apple if c.lower() not in aeiou)
ppl

 

字典:也称关联数组、映射或散列表 用{}表示

可以利用来访问,键不可重复不可修改  下面的‘red‘就是键,2是值

>>> color = {red:2, blue:1, green:3}
>>> color[red]
2
>>> color[blue]=0
>>> color
{green: 3, blue: 0, red: 2}

相关函数

items 、 keys、 values、 get、pop、 popitem、 clear、 copy 、fromkeys 、setdefault、 update

#视图
>>> k = color.keys() >>> for i in k:print(i) green blue red

 

集合:只包含键,没有相关联的值

删除列表中重复的元素

>>> lst = [1,1,2,2,3,3,3]
>>> lst
[1, 1, 2, 2, 3, 3, 3]
>>> s = set(lst)
>>> s
{1, 2, 3}

 

【python】入门学习(六)

标签:style   blog   color   io   使用   strong   ar   for   数据   

原文地址:http://www.cnblogs.com/dplearning/p/3952226.html

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