Python基础篇【第一篇】:python入门

python 简介

python是一种解释型、面向对象、改动数据类型的高级程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于1991年。

python是纯粹的自由软件,源代码和解释器cpython遵循GPL协议。

python的作用:python具有丰富和强大的库。他常常被称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松的联结在一起。常见的一种应用情形是,使用python快速生成程序的原型(有的时候甚至是程序的最终页面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,然后封装为python可以调用的扩展类库。

python最新的版本:3.5.1,2.7.11

python的设计哲学是“优雅”、“明确”、“简单”。

python的优点:简单、易学、免费开源、高层语言、可移植性、可扩展性、可嵌入型、丰富的库

python 安装

Linux平台安装的步骤:

  1. 把下载的包解压:tar -zxvf python.xxxx.tgz
  2. 进入到解压包:cd pythonxxx
  3. 编译安装:./configuer   make&&make install

window安装步骤:

  1. 下载安装包:http://www.python.org/download/
  2. 双击安装包按提示“下一步”就OK了
  3. 然后设置环境变量:path=%path%;C:\Python 

python 第一个程序

Python的3.0版本,常被称为Python 3000,或简称Py3k。相对于Python的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向下兼容。

查看python的版本:

bogon:~ zhangkai$ python3 -V
Python 3.5.1

进入到python的交互模式中也可以查看版本,顺便写第一个程序“Hello,World!”

1 bogon:~ zhangkai$ python3
2 Python 3.5.1 (v3.5.1:37a07cee5969, Dec  5 2015, 21:12:44) 
3 [GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
4 Type "help", "copyright", "credits" or "license" for more information.
5 >>> print("Hello,World!")
6 Hello,World! 7 >>> exit()

也可以保存到一个文件里运行,python的文件是以".py"结尾的文件方式保存的。

1 bogon:~ zhangkai$ vim hello.py
2 #!/usr/bin/env python
3 print("Hello,World!")
4 bogon:~ zhangkai$ python3 hello.py 
5 Hello,World!

第一个python程序就这样搞定了~

数据类型

编码

默认情况下,Python 3源码文件以 UTF-8 编码,所有字符串都是 unicode 字符串。 当然你也可以为源码文件指定不同的编码:

 1 #_*_ coding:utf-8 _* 

在python3中,非-ASCII标识符也是允许的。

注释

在python中单行注释用“#”表示;多行注释用三个单引号或者三个双引号表示'''or"""

 1 (''')
 2 luckynum = 6
 3 for i in range(3):
 4     input_num = int(input('请输入您要猜的数字:'))
 5     if input_num > luckynum:
 6         print('您输入的数字太大了!')
 7     elif input_num < luckynum:
 8         print('您输入的数字太小了!')
 9     else:
10         print('恭喜你TM的猜对了!')
11         break
12 else:
13     print("猜错超过三次~")
14 (''')
15 
16 #name = input('请输入你的名字:')

行与缩进

python是以缩进的方式来表示代码块的,同一个代码块缩进的格式是一致的,通常缩进的格式为四个空格。

python的数据类型和变量

python中数据类型:整型(int)、浮点数(float)、布尔型(bool)、字符型(string)、空值(None)

整数

例如1,和数学上的整数完全一样

浮点数

例如0.11,浮点数就是小数。整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。

布尔型 

布尔类型只有TrueFalse两种值,例如

>>> 3>2
True
>>> 3>4
False

布尔值可以用and、or、not进行运算

and运算是与运算,只有所有都为真(True)的结果下才是True:

1 >>> True and True
2 True
3 >>> True and False
4 False
5 >>> False and False
6 False

or运算是或运算,只要其中一个为True,or运算结果就是True;

1 >>> True or True
2 True
3 >>> True or False
4 True
5 >>> False or False
6 False 7 >>> 

not运算是非运算,他是一个单目运算符,把True变成False,False变成True:

1 >>> not True
2 False
3 >>> not False
4 True
5 >>> 

布尔值经常用在条件判断中,比如

if age >= 18: print 'adult' else: print 'teenager' 
 
空值
空值是python中一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。

字符型

 

指的就是字符串

字符串是以''or""括起来的都是字符串!如果字符串内部既包含'又包含"怎么办?可以用转义字符\来标识,比如想打印I'm "OK"!

>>> print('I\'m \"OK\"!')
I'm "OK"!

 转义字符\可以转义很多字符,如\n表示换行符,\t表示制表符,字符\本身也需要转义,所以用\\表示的字符就是\,在交互式环境试试看 

1 >>> print('I\'m learning\nPython.')
2 I'm learning
3 Python.
4 >>> print('\\\n\\')
5 \
6 \

如果字符串里面有很多字符都需要转义的话,不可能要加入很多\,为了简化,python运行用r''表示''内部的字符串默认不转义

1 >>> print('\\\t\\')
2 \    \
3 >>> print(r'\\\t\\')
4 \\\t\\

如果字符串里面有很多换行的话用\n写在一行里面不好阅读,为了简化用'''...'''这个表示多行内容

>>> print('''q1 q2 q3 q4 q5''')
q1 q2 q3 q4 q5
>>>

 

python中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。

在Python中,变量就是变量,它没有类型,我们所说的"类型"是变量所指的内存中对象的类型。

Python3中有六个标准的数据类型:

  • Numbers_数字
  • String_字符串
  • List_列表
  • Tuple_元组
  • Sets_集合
  • Dictionaries_字典

Numbers(数字)

Python3支持int(整形)、float(浮点数)、bool(布尔型)、complex(复数)。

数值类型的赋值和计算都是很直观的,就像大多数语言一样。内置的type()函数可以用来查询变量所指的对象类型。例如:

1 >>> a,b,c,d = 20,5.5,True,4+3j
2 >>> print(type(a),type(b),type(c),type(d))
3     #用tpye()查看变量的数据类型
4 >>> exit()

数值运算:

 1 >>> 1+2 #加法
 2 3
 3 >>> 3.1-1 #减法
 4 2.1
 5 >>> 2*3 #乘法
 6 6
 7 >>> 2/4 #除法
 8 0.5
 9 >>> 2//4 #取整
10 0
11 >>> 17%3 #取余
12 2
13 >>> 2**5 #乘方
14 32

ps:

  • 1、Python可以同时为多个变量赋值,如a, b = 1, 2。
  • 2、一个变量可以通过赋值指向不同类型的对象。
  • 3、数值的除法(/)总是返回一个浮点数,要获取整数使用//操作符。
  • 4、在混合计算时,Python会把整型转换成为浮点数。

String(字符串)

Python中的字符串str用单引号('')或双引号("")括起来,同时使用反斜杠(\)转义特殊字符。

>>> a = 'Yes,he doesn\'t'
>>> print(a,type(a),len(a))
Yes,he doesn't  14

如果你不想让反斜杠发生转义,可以在字符串前面添加一个r,表示原始字符串:

1 >>> print('C:\some\name')
2 C:\some
3 ame
4 >>> print(r'C:\some\name')
5 C:\some\name
6 >>> 

另外反斜杠可以作为续航符,表示上一行时下一行的延续,还可以使用"""..."""或者'''...'''跨越多行。

字符串可以使用+运算符串联接在一起,或者用*运算符重复:

1 >>> print('str'+'ing','my'*3)
2 string mymymy

Python中的字符串有两种索引方式,第一种是从左往右,从0开始依次增加;从-1开始依次减少。

注意,没有单独的字符类型,一个字符就是长度为1的字符串。

1 >>> word = 'Python'
2 >>> print(word[0],word[5])
3 P n
4 >>> print(word[-1],word[-6])
5 n P

还可以对字符串进行切片,获取一段字符串。用冒号分隔两个索引,形式为变量[头下标:尾下标]。

截取范围是前闭后开的,并且两个索引都可以省略;

 1 >>> word = 'ilovepython'
 2 >>> word[1:5]
 3 'love'
 4 >>> word[:]
 5 'ilovepython'
 6 >>> word[5:]
 7 'python'
 8 >>> word[-10:-6]
 9 'love'
10 >>> 

注意:

  • 反斜杠可以用来转义,使用r可以让反斜杠不发生转义
  • 字符串可以用+运算符连接在一起,用*运算符重复
  • Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。
  • Python中的字符串不能改变

List(列表)

List(列表)是Python中使用最频繁的数据类型。

列表是写在方括号之间、用逗号分隔开的元素列表。列表中元素的类型可以不相同:

>>> a = ['him',23,554,'her']
>>> print(a)
['him', 23, 554, 'her']

和字符串一样,列表同样可以被索引和切片,列表被切片后返回一个包含所需元素的新列表。

列表还支持串联操作,使用+操作符:

1 >>> a = [1,2,3,4,5]
2 >>> a
3 [1, 2, 3, 4, 5]
4 >>> a + [6,7,8]
5 [1, 2, 3, 4, 5, 6, 7, 8]

与Python字符串不一样的是,列表的元素是可以改变的:

 1 >>> a = [1,2,3,4,5,6]
 2 >>> a[0] = 9 #取值,0表示列表的索引也叫下标
 3 >>> a
 4 [9, 2, 3, 4, 5, 6]
 5 >>> a[2:5]
 6 [3, 4, 5]
 7 >>> a[2:5] = [13,14,15] 8 >>> a 9 [9, 2, 13, 14, 15, 6] 10 >>> a[2:5] = [] #删除2-5标志位的元素 11 >>> a 12 [9, 2, 6]

List内置方法

使用dir()可以查看看列表的内置方法:

1 >>> dir(a)
2 ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

详细的使用方法使用help(a)

常用的有'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort'这些个:

help(a)

append()追加

1 >>> name_list = ['zk','dgs','xx']
2 >>> name_list
3 ['zk', 'dgs', 'xx']
4 >>> name_list.append('wyj')
5 >>> name_list
6 ['zk', 'dgs', 'xx', 'wyj']

追加就是放到最后

index()索引值

查找name_list中zk的索引值

>>> name_list.index('zk')
0

从0开始查找找到一个就停止

count()统计

在name_list中在追加一个元素zk,然后统计zk元素的的个数:

1 >>> name_list
2 ['zk', 'dgs', 'xx', 'wyj']
3 >>> name_list.append('zk')
4 >>> name_list
5 ['zk', 'dgs', 'xx', 'wyj', 'zk']
6 >>> name_list.count('zk') 7 2

extend()扩展

可以把两个列表和到一起

1 >>> name_list
2 ['&', 'dgs', 'wyj', 'zsm', 22]
3 >>> b = [1,2,3]
4 >>> name_list.extend(b)
5 >>> name_list
6 ['&', 'dgs', 'wyj', 'zsm', 22, 1, 2, 3]

insert()插入

在name_list列表中dgs中插入一个值:

1 >>> name_list
2 ['zk', 'dgs', 'xx', 'wyj', 'zk']
3 >>> name_list.insert(2,'zsm')
4 >>> name_list
5 ['zk', 'dgs', 'zsm', 'xx', 'wyj', 'zk']
6 >>> 

pop()删除一个

1 >>> name_list
2 ['zk', 'dgs', 'zsm', 'xx', 'wyj', 'zk']
3 >>> name_list.pop()
4 'zk'
5 >>> name_list
6 ['zk', 'dgs', 'zsm', 'xx', 'wyj']

可以发现删除的是最后的一个元素

remove()指定删除一个

现在指定删除xx这个元素:

1 >>> name_list
2 ['zk', 'dgs', 'zsm', 'xx', 'wyj']
3 >>> name_list.remove('xx')
4 >>> name_list
5 ['zk', 'dgs', 'zsm', 'wyj']

reverse()反转

先查看name_list里面的元素,在反转可以看到name_list中的元素全部倒过来了:

1 >>> name_list
2 ['zk', 'dgs', 'zsm', 'wyj']
3 >>> name_list.reverse()
4 >>> name_list
5 ['wyj', 'zsm', 'dgs', 'zk']

sort()排序

在Python3中数据类型不一样无法排序,如下:

 1 >>> name_list.append('&')
 2 >>> name_list.append(22)
 3  name_list
 4 ['wyj', 'zsm', 'dgs', 'zk', '&', 22]
 5 >>> name_list.sort()
 6 Traceback (most recent call last): 7 File "", line 1, in  8 TypeError: unorderable types: int() < str() 9 >>> type(name_list[-1]) 10  11 >>> type(name_list[0]) 12 

全是数字的方式:

1 >>> num_lsit = [321,534,765,23,768]
2 >>> num_lsit
3 [321, 534, 765, 23, 768]
4 >>> num_lsit.sort()
5 >>> num_lsit
6 [23, 321, 534, 765, 768]

 

扩展:

name_list中在插入一个元素zk,就有两个元素zk了,现在想把两个zk全部删除怎么办呢?

可以根据上面的方法,先去找一共有多少个元素zk,然后循环找到的个数,删除指定的。

1 >>> for i in range(name_list.count('zk')): #循环查找zk这个元素的次数
2 ...     name_list.remove('zk')  #指定删除zk元素
3 ...     
4 >>> name_list
5 ['&', 'dgs', 'wyj', 'zsm', 22]

这样就把列表name_list中zk元素给删除了

 

Tuple(元组)

元组和列表类似,不同之处在于元组的元素不能修改。元组写在小括号里,元素之间用逗号隔开。

元组中的元素类型也可以不相同:

1 >>> a = (123,456,'test','math')
2 >>> a
3 (123, 456, 'test', 'math')
4 >>> print(a,type(a),len(a))
5 (123, 456, 'test', 'math')  4

元组与字符串类似,可以被索引且下标索引从0开始,也可以进行截取切片。

其实可以把字符串看做一种特殊的元组。

1 >>> tup = (1,2,3,4,5,6)
2 >>> print(tup[0],tup[1:5])
3 1 (2, 3, 4, 5)
4 >>> tup[0] = 11  #元组中的元素是不能修改的
5 Traceback (most recent call last):
6   File "", line 1, in 
7 TypeError: 'tuple' object does not support item assignment

虽然tuple的元素是不能修改的,但它可以包含可变的对象,比如list列表。

构造包含0个或1个元素的元组是个特殊的问题,所以有一些额外的语法规则:

1 >>> tup1 = ()  #空元组
2 >>> tup2 = (10)  #用常规方法创建一个只有一个值元组的元素
3 >>> tup3 = (20,)
4 >>> print(tup1,type(tup1))
5 () 
6 >>> print(tup2,type(tup2))  #可以看到这种方法创建的只是一个数据类型
7 10 
8 >>> print(tup3,type(tup3))  #所以创建只有一个值的元组时需要在值的后面加上一个逗号 9 (20,) 

另外,元组也支持用+操作符:

1 >>> tup1 = (1,2,3)
2 >>> tup2 = (4,5,6)
3 >>> print(tup1+tup2)
4 (1, 2, 3, 4, 5, 6)

string、list和tuple都属于sequence(序列)

注意:

  • 与字符串一样,元组的元素不能修改
  • 元组也可以被索引和切片,方法一样
  • 注意构造0个或者一个元素的特殊语法和规则
  • 元组也可以使用+操作符进行拼接

Sets(集合)

集合是一个无序不重复元素的集。

基本功能是进行成员关系测试和消除重复元素。

可以使用大括号或者set()函数创建set集合,注意:创建一个空集合必须用set()而不是{},因为{}是用来创建一个空的字典的。

 1 >>> student = {'Tom','Jim', 'Mary', 'Tom', 'Jack', 'Rose'}  #创建一个集合
 2 >>> print(student)  #自动去重
 3 {'Tom', 'Jack', 'Mary', 'Rose', 'Jim'}
 4 >>> 'Rose' in student  #测试成员有就为True
 5 True
 6 >>> 'zk' in student  #没有就为False 7 False 8 >>> 9 >>> a = set('aglajgljasgjasl') 10 >>> b = set('qwetoqurnajksdfhagshdsjf') 11 >>> a 12 {'g', 'j', 'l', 'a', 's'} 13 >>> b 14 {'u', 'j', 'q', 'w', 'o', 'k', 'f', 'a', 'h', 't', 'r', 's', 'd', 'g', 'e', 'n'} 15 >>> a - b  #a和b的差集 16 {'l'} 17 >>> a | b  #a和b的并集 18 {'u', 'q', 'f', 'a', 't', 'r', 's', 'd', 'j', 'w', 'o', 'k', 'h', 'g', 'l', 'e', 'n'} 19 >>> a & b  #a和b的交集 20 {'g', 'j', 'a', 's'} 21 >>> a ^ b  #a和b不同时存在的元素 22 {'u', 'q', 'f', 't', 'r', 'd', 'w', 'o', 'k', 'h', 'l', 'e', 'n'} 23 >>> 

 

Dictionarie(字典)

字典是Python中另一个非常有用的内置数据类型。

字典是一种映射类型(mapping type),它是一个无序的建:值对集合。

关键字必须使用不可变类型,也就是说list和包含可变类型的tuple不能做关键字。

在同一个字典中,关键字还必须互不相同。

 1 >>> dic = {}     #创建一个空的字典
 2 >>> tel = {'Jack':1557,'Tom':1320,'Rose':1886}
 3 >>> tel
 4 {'Tom': 1320, 'Jack': 1557, 'Rose': 1886}
 5 >>> tel['Jack']  #通过key查询对应的值
 6 1557
 7 >>> del tel['Rose']  #删除一个建值 8 >>> tel 9 {'Tom': 1320, 'Jack': 1557} 10 >>> tel['Mary'] = 4127  #添加一个键值 11 >>> tel 12 {'Tom': 1320, 'Jack': 1557, 'Mary': 4127} 13 >>> list(tel.keys())  #返回所有key组成的list 14 ['Tom', 'Jack', 'Mary'] 15 >>> sorted(tel.keys())  #按key排序 16 ['Jack', 'Mary', 'Tom'] 17 >>> 'Tom' in tel  #测试成员 18 True 19 >>> 'Tom' not in tel 20 False 21 >>> 

构造函数dict()直接从键值对sequence中构建字典,当然也可以进行推导,如下:

1 >>> dict([('sape', 4139), ('guido', 4127), ('jack', 4098)])
2 {'sape': 4139, 'jack': 4098, 'guido': 4127}
3 >>> {x: x**2 for x in (2, 4, 6)}
4 {2: 4, 4: 16, 6: 36}
5 >>> dict(sape=4139, guido=4127, jack=4098)
6 {'sape': 4139, 'jack': 4098, 'guido': 4127}

另外,字典类型也有一些内置函数,例如clear()、keys()、values()等。

注意:

  • 字典是一种映射类型,它的元素是键值对
  • 字典的关键字必须为不可变类型,而且不能重复
  • 创建空字典使用{}

条件循环

 

if语句:

if

elif

else:

Python中if语句的一半表现形式:

1 if p_1:
2     print('is 1')
3 elif p_2:
4     print('is 2')
5 else:
6     print('is 3')

如果条件满足p_1将会输出is 1,如果条件不满足p_1满足p_2的话将会输出is 2,如果以上两个条件都不满足的话将会执行第三个结果is 3,所以if的关键语句为:if  elif  else。

注意:

  • 每个条件后面都要使用冒号:,表示接下来满足条件后要执行的语句块。
  • 使用缩进来划分语句块,相同缩进数的语句组成一个语句块。
  • 在Python中没有switch-case语句。

实例:猜数字

 1 #!/usr/bin/env python
 2 #_*_ coding:utf-8 _*_
 3 __author__ = 'zhangkai'
 4 
 5 age = 5   #变量设置年龄的值
 6 while True: #循环
 7     age = int(input('请猜测狗的年龄:'))    #int是输入转换成数字类型
 8     if age < 5:
 9         print('你输入的年龄太小了!')
10     elif age >5:
11         print('你输入的年龄太大了!')
12     else:
13         print('恭喜你猜对了!') 14 exit() #退出系统

执行结果:

/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 /Users/zhangkai/PycharmProjects/Oldboy12_3.5/day01/test.py
请猜测狗的年龄:1
你输入的年龄太小了!
请猜测狗的年龄:2
你输入的年龄太小了!
请猜测狗的年龄:6
你输入的年龄太大了!
请猜测狗的年龄:5  #猜对了之后退出
恭喜你猜对了!

Process finished with exit code 0

循环

Python中的循环语句有for和while。

Python循环语句的控制结构图:

while 循环

Python中while语句的一般形式:

while 判断条件:
    statements

同样注意冒号和缩进,另外,在python中没有do..while循环

实例:用while循环求1-100的和:

#!/usr/bin/env python
#_*_ coding:utf-8 _*_
__author__ = 'zhangkai'
n = 100 #变量
sum = 0
counter = 1
while counter <=n:
    sum += counter
    counter +=1
print("1-100之和为:",sum)

运行结果:

/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 /Users/zhangkai/PycharmProjects/Oldboy12_3.5/day01/test.py
1-100之和为: 5050

Process finished with exit code 0

for语句

python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

for循环的一般格式如下:

for <变量> in <序列>:
    <声明>
else:
    <声明>

python loop循环实例:

1 >>> a = ["C", "C++", "Perl", "Python"]
2 >>> for i in a:
3 ...     print(i)
4 ... 
5 C
6 C++
7 Perl 8 Python 9 >>> 

break语句用于跳出当前循环体:

 1 #!/usr/bin/env python
 2 #_*_ coding:utf-8 _*_
 3 __author__ = 'zhangkai'
 4 a = ["C", "C++", "Perl", "Python"]
 5 for i in a:
 6     if i == 'C':
 7         print('列表中包含C')
 8         break   #跳出本次循环
 9     print('干的漂亮~')
10 else: 11 print('列表中没有C') 12 print('呵呵')

执行脚本后,先循环判断条件C是不是在列表中,找到之后向下走看到break就直接跳出了本次的循环然后走到了“呵呵”,结果如下:

/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 /Users/zhangkai/PycharmProjects/Oldboy12_3.5/day01/test.py
列表中包含C
呵呵

Process finished with exit code 0

range()函数

如果你需要遍历数字列表,可以使用内置函数range()。他会生成数列:

>>> for i in range(5):
...  print(i)
... 
0
1
2
3
4

也可以指定range区间的值:

>>> for i in range(5,9):
...  print(i)
... 
5
6
7
8

也可以用range指定数字开始并指定不同的增量(甚至可以是负数;有时这也叫做步长)

>>> for i in range(0,10,3):
...  print(i)
... 
0
3
6
9

也可以结合range()和len()函数遍历一个序列的索引:

 1 >>> a = ['Mary', 'had', 'a', 'little', 'lamb']
 2 >>> for i in range(len(a)):
 3 ...     print(i,a[1])
 4 ... 
 5 0 had
 6 1 had 7 2 had 8 3 had 9 4 had 10 >>> for i in range(len(a)): 11 ... print(i,a[i]) 12 ... 13 0 Mary 14 1 had 15 2 a 16 3 little 17 4 lamb

用range()函数创建一个列表:

>>> list(range(5))
[0, 1, 2, 3, 4]

brea和continue语句及循环中的else子语句

break语句可以跳出for和while的循环体。如果你从for或while循环中终止,任何对应的循环else块将不执行。

continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后继续进行下一轮循环。

循环语句可以有else子句;它在穷尽列表(以for循环)或条件变为假(以while循环)循环终止时被执行,但循环被break终止时不执行.如下查寻质数的循环例子:

 1 #!/usr/bin/env python
 2 #_*_ coding:utf-8 _*_
 3 __author__ = 'zhangkai'
 4 for n in range(2,10):
 5     for x in range(2,n):
 6         if n % x == 0:
 7             print(n,'equals',x,'*',n//x)
 8             break
 9     else:  #循环没有找到的数字
10         print(n,'is a prime number') 11 #结果 12 /Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5 /Users/zhangkai/PycharmProjects/Oldboy12_3.5/day01/test.py 13 2 is a prime number 14 3 is a prime number 15 4 equals 2 * 2 16 5 is a prime number 17 6 equals 2 * 3 18 7 is a prime number 19 8 equals 2 * 4 20 9 equals 3 * 3 21 22 Process finished with exit code 0

pass语句

pass语句什么都不做。它只在语法上需要一条语句但程序不需要任何操作时使用.例如:

>>> while True:
...     pass  #如果回车还会一直在等待状态
... 

最小的类:

>>> class haha:
...     pass

 

 

 

转载于:https://www.cnblogs.com/allan-king/p/5441637.html

你可能感兴趣的:(Python基础篇【第一篇】:python入门)