python--循环、列表、字典、元组

来源:互联网 发布:自动伴奏音源软件 编辑:程序博客网 时间:2024/05/20 05:05

1.for-loop和列表

在开始使用 for 循环之前,你需要在某个位置存放循环的结果。最好的方法是使用列表(list),顾名思义,它就是一个按顺序存放东西的容器。如
何创建列表:
hairs = [‘brown’, ‘blond’, ‘red’]
eyes = [‘brown’, ‘blue’, ‘green’]
weights = [1, 2, 3, 4]

the_count = [1, 2, 3, 4, 5]fruits = ['apples', 'oranges', 'pears', 'apricots']change = [1, 'pennies', 2, 'dimes', 3, 'quarters']# this first kind of for-loop goes through a listfor number in the_count:    print "This is count %d" % number# same as abovefor fruit in fruits:    print "A fruit of type: %s" % fruit# also we can go through mixed lists too# notice we have to use %r since we don't know what's in itfor i in change:    print "I got %r" % i# we can also build lists, first start with an empty oneelements = []# then use the range function to do 0 to 5 countsfor i in range(0, 6):    print "Adding %d to the list." % i# append is a function that lists understand    elements.append(i)# now we can print them out toofor i in elements:    print "Element was: %d" % i

1.range(0, 6)函数表示从0取到5,包含开始的一个数,不包含结束的数
2.可以使用语句elements = range(0,6),直接为elements赋值,赋值后elements = [0,1,2,3,4,5]
3.创建二维列表:就是在列表中包含列表,例如: [[1,2,3],[4,5,6]]
4.elements.append() 的功能:在列表的尾部追加元素

2.while-loop

与C语言中的while循环区别不大

i = 0numbers = []while i < 6:    print "At the top i is %d" % i    numbers.append(i)    i = i + 1    print "Numbers now: ", numbers    print "At the bottom i is %d" % i    print "The numbers: "for num in numbers:    print num

tips:如果出现while死循环,按ctrl+C结束循环

3.访问列表的元素

访问列表的第一个元素:(Python 的列表也是从 0 开始的)

animals = ['bear', 'tiger', 'penguin', 'zebra']bear = animals[0]

4.向列表添加元素

向列表中添加元素:

4.1 append方法

#append函数,只能接收一个参数elements.append("aaa")

4.2 extend方法

#extend函数,只能接收一个参数报错:elements.extend("bbb")  #extend的原理是使用一个列表来扩展另一个列表,所以它的参数应该是一个列表:elements.extend(["bbb","ccc"]) 

append 和 extend 函数都是自动追加到列表末尾

4.3 insert函数

两个参数,第一个代表在列表中的位置,第二个参数代表插入的元素

elements.insert(0,"ddd")

5.列表的长度

len(elements)

6. 删除列表中的元素

li = [1,2,3,4,5,6]# 1.使用del删除对应下标的元素del li[2]#删除下标为2的元素,即3# li = [1,2,4,5,6]# 2.使用.pop()删除最后一个元素li.pop()#pop函数会有输出,即输出pop出来的那个值# li = [1,2,4,5]li.pop(1)# 带参数的使用,即pop出元素2# li = [1,4,5]# 3.删除指定值的元素li.remove(4)# 把4从列表中删除# li = [1,2,5]#4.列表分片slice>>li[1:3][2,5]#此时li中元素不会减少,li = [1,2,5]>>li[:3][1,2,5]>>li[1:][2,5]>>li[:][1,2,5]

7.列表的运算符操作

比较的是从第一个元素开始比较,若第一个元素大则大

>>li1 = [123,456]>>li2 = [456,123]>>li1>li2false

列表可以用+进行连接

>>li3 = li1+li2>>li3[123,456,123,456]#这种方法不好,不要用!!最好用前面的添加函数

用乘号*重复

>>li1*3[123,456,123,456,123,456]

in符号

>>123 in li1true>>li5 = [123,[456,789],432]>>456 in li5false>>li5 = [123,[456,789],432]>>456 in li5[1]true>>li5[1][1]456

8.列表的函数

li1.count(123) #返回123在列表中出现的次数li1.index(123) #返回123第一次出现的位置的下标li1.index(123,2)li1.index(123,2,9) #在一定的范围中返回第一出现的位置li1.reverse() #翻转li1.sort()    #排序,从小到大li1.sort().reverse()  #从大到小排序li1.sort(reverse = true) #直接从大到小li2 = li1[:]li3 = li1不同点:li2是一份拷贝,和原来的那一份不是同一份,而li3和原来的是同一份,所以当li1改变的时候,li2不改变,但是li3改变

7.字典

字典可以将一个物件和另外一个东西关联,不管它们的类型是什么,类似于hashmap

# create a basic set of states and some cities in themcities = {    'CA': 'San Francisco',    'MI': 'Detroit',    'FL': 'Jacksonville'}# add some more citiescities['NY'] = 'New York'cities['OR'] = 'Portland'# print out some citiesprint '-' * 10print "NY State has: ", cities['NY']print "OR State has: ", cities['OR']

可以向字典中添加元素

>>> stuff[1] = "Wow">>> stuff[2] = "Neato">>> print stuff[1]Wow>>> print stuff[2]Neato>>> print stuff{'city': 'San Francisco', 2: 'Neato','name': 'Zed', 1: 'Wow', 'age': 36,'height': 74}>>>

可以删除字典中的元素

>>> del stuff['city']>>> del stuff[1]>>> del stuff[2]>>> stuff{'name': 'Zed', 'age': 36, 'height': 74}>>>

5.列表和字典的不同

(1)列表和字典有何不同?
列表是有序排列的一些物件,而字典是将一些物件(keys)对应到另外一些物件(values)的数据结构。
(2)字典能用在哪里?
各种你需要通过某个值去查看另一个值的场合。其实你可以把字典当做一个“查询表”。
(3)列表能用在哪里?
列表是专供有序排列的数据使用的。你只要知道索引就能查到对应的值了。

6.函数名也可以作为变量存放到字典中

cities['_find'] = find_citycity_found = cities['_find'](cities, state)

第一行代码:首先把函数 find_city 放到叫做 cities 的字典中,并将其标记为 ‘_find’。
第二行代码可以分解成如下步骤:
1. Python 看到 city_found = 于是知道了需要创建一个变量。
2. 然后它读到 cities ,然后知道了它是一个字典
3. 然后看到了 [‘_find’] ,于是 Python 就从索引找到了字典 cities 中对应的位置,并且
获取了该位置的内容。
4. [‘_find’] 这个位置的内容是我们的函数 find_city ,所以 Python 就知道了这里表示一
个函数,于是当它碰到 ( 就开始了函数调用。
5. cities, state 这两个参数将被传递到函数 find_city 中,然后这个函数就被运行了。
6. find_city 接着从 cities 中寻找 states ,并且返回它找到的内容,如果什么都没找到,
就返回一个信息说它什么都没找到。
7. Python find_city 接受返回的信息,最后将该信息赋值给一开始的 city_found 这个变
量。

7.元组

关于元组的介绍连接
http://www.jb51.net/article/47986.htm

0 0
原创粉丝点击