Python基础系列----字典、基本语句

1.定义                                                                                              html

  映射:经过名字来引用的数据结构。与前面说的数据结构不一样,一个是经过下标的数字,一个是经过名称。python

  字典是python中惟一内建的映射类型。字典中的值并无特殊的顺序,但都是存储在一个特定的键下。键能够是数字、字符甚至是元组。数据结构

  字典由多个键及其对应的值构成的键-值对组成。ide

 

1 phonebook={'Tom':'123456','Beth':'123'}
2 names={}
View Code

 

   dict函数,能够经过此函数映射或者对的序列创建字典。函数

  len(d)函数,返回d中键值对的数量this

  d[k],返回关联到键k上的值spa

  d[k]=x,将值x关联到键k上3d

  del d[k],删除键为k的项code

  k in d,检查键k是否在d中。htm

 

 

 1 items=[('name','Gumby'),('age',22)]
 2 print(items)
 3 
 4 d=dict(items)
 5 print(d)
 6 
 7 print(len(d))
 8 print(d['name'])
 9 
10 d['age']=12
11 print(d)
12 print('age' in d)
View Code

 

  字典的键能够是任意不可变的类型。

1.1字典的格式化字符串                                                                                                 

  经过前面,咱们知道了字符串的格式化,传入的参数咱们可使用元组等序列,固然字典也能够一样实现。以下:

template='''
<html>
    <head>
        <title>%(title)s</title>
    </head>
    <body>
        <h1>%(title)s</h1>
        <p>%(text)s</p>
    </body>
</html>
'''
data={'title':'My Home Page','text':'Welcome to my home page!'}

print(template %data)
View Code

  经过上面的例子,咱们发现,咱们能够很好的利用此特性来完成一些比较特殊的任务。除了增长的字符串键之外,转换说明符仍是和之前同样。当以这种方式使用字典时,只要给出的键都能在字典中找到,就可使用任意数量的转换说明符。 

1.2字典的方法                                                                                                             

  1.clear方法,清楚字典中的全部项

  2.copy方法,返回一个具备相同键值对的字典

  3.fromkeys方法,使用给定的键创建新的字典,每一个键都对应一个默认的值None

  4.get方法,根据键名,返回对应的值

  5.has_key方法,检查当前字典是否包含有特定的键

  6.items方法,将字典索引的项以列表的方式返回;iteritems方法,与items大体相同,可是会返回一个迭代器,而不是列表

  7.keys方法,将字典中的键以列表形式返回,而iterkeys方法,则返回针对键的迭代器

  8.pop方法,得到对应与给定键的值,而后将这个键值对从字典移除

  9.popitem方法,随机返回一个键值对

  10.setdefault方法,与get方法相似,获取给定键的值,若当前键在字典中不存在,则返回设置的默认值

  11.update方法,利用一个字典更新另一个字典

  12.values方法,以列表的造成返回字典中的值;而itervalues方法,返回一个值的迭代器

 

 1 d={'title':'My Home Page','text':'Welcome to my home page!'}
 2 print(d)
 3 d.clear()
 4 print(d)
 5 
 6 d={'title':'My Home Page','text':'Welcome to my home page!'}
 7 f=d.copy()
 8 print(d)
 9 print(f)
10 
11 print({}.fromkeys(['name','age']))
12 
13 print(d.get('title'))
14 
15 print(d.keys())
View Code

2.基本语句                                                                                        

2.1print和import                                                                                                         

  1.使用逗号输出,在前面已经提到过print来打印结果,不论是字符串仍是其余类型进行自动转换后的字符串,在打印多个表达式时,可使用逗号将其隔开。

  2.import,从模块中导入函数

1 print('Age:',22)
2 
3 import math
4 from math import pi
5 from math import *
View Code

2.2赋值魔法                                                                                                                   

  1.序列解包:将多个值的序列解开,而后放到变量的序列中,也叫递归解包

 1 x,y,z=1,2,3
 2 print('x:',x,',y:',y,',z:',z)
 3 
 4 x,y=y,x
 5 
 6 print('x:',x,',y:',y,',z:',z)
 7 
 8 values=1,2,3
 9 x,y,z=values
10 print('x:',x,',y:',y,',z:',z)
View Code

  经过以上咱们能够看出,解包的序列中的元素必须和防止在赋值符号=左边的变量数量彻底一致 

  2.链式复制:将同一个值赋给多个变量的捷径。例如:x=y=1

   3.增量复制:增量复制为链式复制的一种特殊状况,例如:x=1;x+=1

2.3语句块:缩排的乐趣                                                                                                  

  语句块是字条件为真时执行或者执行屡次的一组语句。在代码前放置空格来缩进语句便可建立语句块。通常状况下,咱们使用4个空格

2.4条件和条件语句                                                                                                        

  条件,咱们都知道,在不一样的语言中,相信都有相似的表达方式,在python中,根据条件咱们能够知道他 究竟返回的是真(true)或者假(false)。在python中,false、None、0、""、()、[]、{}返回false,其余状况下返回true。

  1.if,else,elif语句,经过这三者之间的链接,咱们能够对咱们的逻辑进行不一样的判断筛选。

 

1 num=input('Enter a number:')
2 if num>0:
3     print('The number is positive')
4 elif num<0:
5     print('The number is negative')
6 else:
7     print('The number is zero')
View Code

 

  2.比较运算符:

python比较运算符
表达式 描述
x==y x等于y
x<y x小于y
x>y x大于y
x<=y x小于等于y
x>=y x大于等于y
x!=y x不等于y
x is y x和y是同一个对象
x is not y x和要是不一样的对象
x in y x是y容器 的成员
x not in y x不是y容器的成员

  3.断言,在程序中,早晚会出现崩溃,不如在错误条件出现时就让它崩溃,这样避免给后续的业务形成不可估量的损失。一般咱们使用是哦那个assert进行断言,例如:age =10;assert 1<age<10;

若是age在这个地方不知足条件时,就会抛出异常,再也不执行下面的语句。

2.5循环                                                                                                                       

  1.循环,while、for

 1 x=1
 2 while x<=100:
 3     print(x)
 4     x+=1
 5 
 6 words=['this','is','an','ex','parrot']
 7 for word in words:
 8     print(word)
 9 
10 for number in range(1,100):
11     print(number)
View Code

  2.字典循环遍历

1 d={'x':1,'y':2,'z':3}
2 for key,value in d.items():
3     print(key,' corredponds to',value)
View Code

  3.并行迭代,一般使用zip方法将两个个数相同的列表,经过对应的下标合并为一个元组的列表。

names=['anne','beth','george','damon']
ages=[12,23,34,45]
for i in range(len(names)):
    print(names[i],'is',ages[i],'years old')

zips=zip(names,ages)
print(zips)

for name,age in zips:
     print(name,'is',age,'years old')
View Code

  4.翻转和排序迭代。及reversed方法和sorted方法

 

1 print(sorted([2,5,4,3,1]))
2 
3 print(sorted('Hello,world!'))
4 
5 print(''.join(list(reversed('Hello,world!'))))
View Code

 

  5.跳出循环。目前有两种方式,continue:结束当前迭代,跳转到下一个迭代中;break,结束当前整个循环,以前循环外的后续代码。

2.6列表推导式----轻量级循环                                                                                         

  列表推导式,利用其余列表建立新的列表的一种方法。工做方式相似于for循环。

 

1 d=[x*x for x in range(10)]
2 print(d)
3 
4 d=[x*x for x in range(10) if x%3==0]
5 print(d)
6 
7 d=[(x,y) for x in range(3) for y in range(3)]
8 print(d)
View Code

 

  列表推倒时对咱们有十分巨大的用处,特别是在构建某些对象时。

3.写在最后                                                                                      

  若是对你有必定的帮助,麻烦点个

 若须要转载,请标明出处!

相关文章
相关标签/搜索