Python基础教程总结(二)

  上周总结了一下Python的一些基本数据类型和用法。这次总结一下4-9章的内容,完后,赶紧学以致用吧。

5. 第四章——字典:当索引不好用时

  字典是Python中唯一内建的映射类型。字典中的值并没有特殊的顺序,但是都存储在一个特定的键(Key)里。键可以是数字、字符串甚至是元组。其实用过Json的同学就会觉得Python的字典很亲切。

  5.1. 创建字典

  • 方法一:
1 >>> phonebook = {Alice: 2341, Beth: 9102, Cecil: 3258}
  • 方法二:
1 >>> items = [(name, Gumby),(age, 42)]
2 >>> phonebook = dict(items)
3 >>> phonebook
4 {age: 42, name: Gumby}
  • 方法三:
1 >>> items = dict(name=Gumby, age=42)
2 >>> items
3 {age: 42, name: Gumby}
  • 方法四:
1 >>> {}.fromkeys([name,age])
2 {age: None, name: None}
3 >>> dict.fromkeys([name,age])
4 {age: None, name: None}
5 >>> dict.fromkeys([name,age], unknown)
6 {age: unknown, name: unknown}

  5.2. 使用字典

  • 格式化字符串:
1 >>> items
2 {age: 42, name: Gumby}
3 >>> "%(name)s‘s age is %(age)s." % items
4 "Gumby‘s age is 42."

 

 1 >>> template = ‘‘‘<html>
 2 ... <head><title>%(title)s</title></head>
 3 ... <body>
 4 ... <h1>%(title)s</h1>
 5 ... <p>%(text)s</p>
 6 ... </body>‘‘‘
 7 >>> data = {title: Panderen Home, text: Welcome to my home page}
 8 >>> print template % data
 9 <html>
10 <head><title>Panderen Home</title></head>
11 <body>
12 <h1>Panderen Home</h1>
13 <p>Welcome to my home page</p>
14 </body>

  5.3. 字典方法

  • clear()方法可以清除值,而={}是将引用给变量(类似C语言里面的指针);
  • copy(),deepcopy()方法,copy()复制的是引用,只要改变一个,其他变量内的值也会改变。deepcopy()方法复制的是值,各管各的;
  • fromkeys方法,5.1提到过;
  • get()方法,items.get(‘name‘, ‘N/A‘),参数一是键,参数二是默认值;
  • has_key()方法,是否有键,返回Ture or False;
  • items()返回列表,iteritems()返回一个迭代器;
  • keys()返回列表,iterkeys()迭代器;
  • pop()方法,items.pop(‘x‘);
  • popitem()方法,该方法类似list.pop(),不过后者会弹出列表最后一个元素。popitem()弹出随机项;
  • setdefault()方法,items.setdefault(‘name‘,‘N/A‘)。不设置默认值,系统会使用None;
  • update()方法,可以利用一个字典项更新另一个字典内容;
  • values()以列表形式返回值,itervalues()返回一个迭代器。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。