首页 » 父与子的编程之旅:与小卡特一起学Python » 父与子的编程之旅:与小卡特一起学Python全文在线阅读

《父与子的编程之旅:与小卡特一起学Python》第12章

关灯直达底部

测试题

1. 可以使用 appendinsertextend 向列表增加元素。

2. 可以使用 removepopdel 从列表删除元素。

3. 要得到列表的一个有序副本,可以采用下面任意一种做法:

  • 建立列表的副本,使用分片:new_list = my_list[:],然后对新列表排序:new_list.sort

  • 使用 sorted 函数:new_list = sorted(my_list)

4. 使用 in 关键字可以得出一个特定值是否在一个列表中。

5. 使用 index 方法可以得出一个值在列表中的位置。

6. 元组是一个与列表类似的集合,只不过元组不能改变。元组是不可改变的, 而列表是可改变的。

7. 可以采用多种方法建立一个双重列表。

  • 使用嵌套的中括号:

    >>> my_list =[[1, 2, 3],['a','b','c'],['red', 'green', blue']]  
  • 使用 append,并追加一个列表:

    >>> my_list = >>> my_list.append([1, 2, 3])>>> my_list.append(['a', 'b', 'c'])>>> my_list.append(['red', 'green', 'blue'])>>> print my_list[[1, 2, 3], ['a', 'b', 'c'], ['red', 'green', 'blue']]  
  • 建立单个列表,再合并这些列表:

    >>> list1 = [1, 2, 3]>>> list2 = ['a', 'b', 'c']>>> list3 = ['red', 'green', 'blue']>>> my_list = [list1, list2, list3]>>> print my_list[[1, 2, 3], ['a', 'b', 'c'], ['red', 'green', 'blue']]  

8. 可以使用两个索引得到双重列表中的一个值:

my_list = [[1, 2, 3], ['a', 'b', 'c'], ['red', 'green', 'blue']]my_color = my_list[2][1]  

这个答案是 'green'

9. 字典是键值对的集合。

10. 你可以通过指定键和值的方式在字典中添加条目:

phone_numbers['John'] = '555-1234'  

11. 要通过键在字典中查找一个条目,可以使用索引:

print phone_numbers['John']  

动手试一试

1. 下面这个程序会得到 5 个名字,把它们放在一个列表中,然后打印出来:

nameList = print "Enter 5 names (press the Enter key after each name):"for i in range(5):    name = raw_input    nameList.append(name)print "The names are:", nameList  

2. 下面这个程序会打印原来的列表和排序后的列表:

nameList = print "Enter 5 names (press the Enter key after each name):"for i in range(5):    name = raw_input    nameList.append(name)print "The names are:", nameListprint "The sorted names are:", sorted(nameList)  

3. 下面这个程序只打印列表中的第 3 个名字:

nameList = print "Enter 5 names (press the Enter key after each name):"for i in range(5):    name = raw_input    nameList.append(name)print "The third name is:", nameList[2]  

4. 下面这个程序允许用户替换列表中的一个名字:

nameList = print "Enter 5 names (press the Enter key after each name):"for i in range(5):    name = raw_input    nameList.append(name)print "The names are:", nameListprint "Replace one name. Which one? (1-5):",replace = int(raw_input)new = raw_input("New name: ")nameList[replace - 1] = newprint "The names are:", nameList  

5. 下面这个程序允许用户创建包含单词和对应定义的词典:

user_dictionary = {}while 1:    command = raw_input("'a' to add word,'l' to lookup a word,'q' to quit")    if command == "a":word = raw_input("Type the word: ")definition = raw_input("Type the definition: ")user_dictionary[word] = definitionprint "Word added!"    elif command == "l":    word = raw_input("Type the word: ")    if word in user_dictionary.keys:print user_dictionary[word]    else:print "That word isn't in the dictionary yet."    elif command == 'q':break