Python基础语法

python基础语法

1、标识符

在Python中,全部标识符能够包括英文、数字以及下划线(_),但不能以数字开头。java

在Python中的标识符是区分大小写的。python

在Python中如下划线开头的标识符是有特殊意义的。程序员

  • 1.以单下划线开头_foo的表明不能直接访问的类属性,需经过类提供的接口进行访问,不能用from xxx import *而导入。
  • 2.以双下划线开头的__foo表明类的私有成员;
  • 3.以双下划线开头和结尾的__foo__表明Python里特殊方法专用的标识,如__init__()表明类的构造函数。

代码示例:小程序

class person:
    name = ""
    age = 0
    _gender = ""
    __father = ""
    def __init__(self, name, age):
        self.name = name
        self.age = age
        print "初始化"

2、保留字

Python中有31个保留字,这些保留字不能用做常数或者变数,或者任何其余标识符名称。全部Python的关键字只包含小写字母。api

序号 保留字 说明
1 and 用于表达式运算,逻辑与操做。
2 as 用于类型转换。
3 assert 断言,用于判断变量或条件表达式的值是否为真。
4 break 中断循环语句的执行。
5 class 用于定义类。
6 continue 继续执行下一次循环。
7 def 用于定义函数或方法。
8 del 删除变量或序列的值。
9 elif 条件语句,与if、else结合使用。
10 esle 条件语句,与if、elif结合使用。也可用于异常和循环语句。
11 except 包含捕获异常后的操做代码块,与try、finally结合使用。
12 exec 用于执行Python语句。
13 for for循环语句。
14 finally 用于异常语句,出现异常后,始终要执行finally包含的代码块。
15 from 用于导入模块,与import结合使用。
16 global 定义全局变量。
17 if 条件语句,与else、elif结合使用。
18 import 用于导入模块,与from结合使用。
19 in 判断变量是否存在序列中。
20 is 判断变量是否为某个类的实例。
21 lambda 定义匿名函数。
22 not 用于表达式运算,逻辑与操做。
23 or 用于表达式运算,逻辑或操做。
24 pass 空的类,函数,方法的占位符。
25 print 打印语句。
26 raise 异常抛出操做。
27 return 用于从函数返回计算结果。
28 try 包含可能会出现异常的语句,与except,finally结合使用。
29 while 循环语句。
30 with 简化Python语句。
31 yield 用于从函数依次返回值。
32 保留字 说明

3、代码规范

一、PEP8

为了写出优雅的代码,Python中常用PEP8规范,规定以下:数据结构

  • 1.缩进与换行,每级缩进使用4个空格。
  • 2.限制全部行的最大长度为79个字符。
  • 3.空行
  • (1)顶层函数和类之间使用两个空行。
  • (2)类的方法之间使用一个空行。
  • (3)在函数中使用空行来表示不一样的逻辑段落。
  • 4.导入一般应当使用单独的行。
  • (1)导入老是位于文件的顶部,在模块注释和文档字符串以后,在模块的全局变量与常量以前。
  • (2)导入按照如下顺序分组:
    • standard library imports 标准库导入
    • related third party imports 相关第三方导入
    • local application/library specific imports 本地应用程序/库的特定导入

每组导入之间使用空行隔开。app

  • 5.下面的状况,避免多余空格。
  • (1)紧贴着圆括号、方括号和花括号。
  • (2)紧贴在逗号、分号或冒号以前。
  • (3)紧贴在函数调用的参数列表的圆括号的开括号前。
  • (4)紧贴在索引或切片的方括号的开括号前。
  • (5)在赋值语句的运算符周围,不要为了对齐而使用多个空格。

二、语句

  • 1.在Python中,一行为一条语句,不须要分号标识。
  • 2.在Python中,能够同一行显示多条语句,只需用分号“;”隔开便可。
  • 3.在Python中,可使用反斜杠(\)将一行语句分为多行解释。可是语句包含的{}、[]、()中的内容不须要使用多行链接符。

代码示例:函数

print "hello";print "world"
item_one = 3
item_tow = 4
item_three = 5
total = item_one + \
    item_tow + \
    item_three
print total
hello
world
12

三、缩进

Python中使用缩进来表示做用范围,因此Python中缩进格式要严格遵循结构。.net

代码示例:3d

num = 2 + 3 + 4
if num > 5:
    print "大于"
else:
    print "小于"
大于

四、注释

  • 1.使用#做为单行注释。
  • 2.使用三个单引号或者三个双引号做为多行注释。

代码以下:

# 这是单行注释

'''这是单引号多行注释'''

"""这是双引号多行注释"""

4、变量

一、声明变量

  • 1.Python中的变量/常量不须要声明符直接写便可。
  • 2.Python中的变量/常量不区分类型。同一个变量能够被屡次赋值为不一样类型的值。
  • 3.Python中的变量一般用小写表示。
  • 4.Python中的常量一般用大写表示。

Python中的常量并不会受到保护,若是真的改是不会报错的,因此能够认为Python中并不真正存在语言意义上的常量,而是约定经过大写的变量标明它是一个常量,后续不要修改。

代码示例:

x = "abc"
print "x is {}".format(x)
x = 123
print "x is {}".format(x)
x = y = z = 999
print "x is {},y is {}, z is {}".format(x, y, z)
x, y, z = 1, 2, 'a'
print "x is {},y is {}, z is {}".format(x, y, z)
x is abc
x is 123
x is 999,y is 999, z is 999
x is 1,y is 2, z is a

format()函数配合花括号{}使用,能够起到占位符的做用。

Python中变量互换值不像其余语言那样须要三方变量,这里使用了一种语法糖。

代码示例:

a = "x"
b = "y"
a, b = b, a
print "a is {}, b is {}".format(a, b)
a is y, b is x

二、做用域

一个程序的全部的变量并非在哪一个位置均可以访问的。访问权限决定于这个变量是在哪里赋值的。

变量的做用域决定了在哪一部分程序你能够访问哪一个特定的变量名称。

两种最基本的变量做用域以下:全局变量、局部变量。

定义在函数内部的变量拥有一个局部做用域,定义在函数外的拥有全局做用域。

局部变量只能在其被声明的函数内部访问,而全局变量能够在整个程序范围内访问。调用函数时,全部在函数内声明的变量名称都将被加入到做用域中。

5、数据类型

虽然Python中的引用没有数据类型,可是Python是有数据类型的概念的。

Python中有5大标准数据类型,分别是:Number(数字)、String(字符串)、List(列表)、Tuple(元祖)、Dictionary(字典)。

这里介绍的内容以下:

  • Number
  • String
  • 布尔类型
  • 空值

这里有几个函数,在判断类型和内存的时候会用到:

  • id(obj):查看对象的内存地址。
  • type(obj):查看对象的类型。

一、Number(数字)

Python Number 数据类型用于存储数值。

Number数据类型是不容许改变的,这就意味着若是改变 Number 数据类型的值,将从新分配内存空间。

Python支持四种不一样的Number类型:

  • 1.整型(Int) - 一般被称为是整型或整数,是正或负整数,不带小数点。
  • 2.长整型(long integers) - 无限大小的整数,整数最后是一个大写或小写的L。
  • 3.浮点型(floating point real values) - 浮点型由整数部分与小数部分组成,浮点型也可使用科学计数法表示(2.5e2 = 2.5 x 10^2 = 250)
  • 4.复数(complex numbers) - 复数由实数部分和虚数部分构成,能够用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。

代码示例:

x = 1 #整型
x = 2L #长整型
x = 3.1415 #浮点型
#复数
x = complex(32, 64)
print x
x = 32 + 64j
print x
(32+64j)
(32+64j)

二、String(字符串)

Python中能够用单引号、双引号、三引号来声明字符串直接量。

在声明字符串直接量时单引号和双引号没什么区别。'abc'和"abc"等价。

而三引号声明的字符串中能够包含任意字符,这些字符会被直接看成字符串的内容。

Python中并不存在相似java中char的字符类型,想要表示一个字符,写成一个长度为1的字符串便可。

Python中字符串是有下标的,下标从0开始。Python中String类型是不可变类型的对象。

Python中len()函数能够查看字符串的长度。

代码示例:

x = 'abc'
print id(x)
x = "abc"
print id(x)
x = '''abc'''
print len(x)
print id(x)
x = """abc"""
print id(x)
x = "b"
print id(x)
41772656
41772656
3
41772656
41772656
39430944

由上述代码能够看出,四种引号声明的对象是同样的效果。String对象是不可变的。

1.转义字符

Python中使用反斜杠(\)做为转义字符

转义字符 说明
\ 续行符
\ 反斜杠符号
' 单引号
" 双引号
\a 响铃
\b 退格
\e 转义
\000 空格
\n 换行
\v 纵向制表符
\t 横向制表符
\r 回车
\f 换页
\oyy 八进制数,yy表明的字符。例如:\o12表明换行
\xyy 十六进制数,yy表明的字符。例如:\x0a表明换行
\other 其余的字符以普通格式输出。

2.字符串操做符

  • +:字符串链接。
  • *:重复输出字符串
  • [index]:经过索引获取字符串中的字符。此方法只能用于获取,不能用于更改字符串的某个字符。
  • [indexbegin:indexend:step]:截取字符串中的一部分。setp不写默认为1。indexbegin不写默认为0。indexend不写,默认为字符串的长度。
  • in:成员运算符。若是字符串中包含指定的字符,返回True。不然返回False。
  • not in:成员运算符。若是字符串中不包含指定字符,返回True。不然返回False。
  • r/R:原始字符串。全部的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 原始字符串除在字符串的第一个引号前加上字母"r"(能够大小写)之外,与普通字符串有着几乎彻底相同的语法。

代码示例:

a = "Hello"
b = "Workd"
print a + b
print a * 2
print a[1]
print a[-2]
print a[1:3]
print a[0:4:2]
print a[:2]
print a[::-1] #反转字符串
print "H" in a
print "H" not in b
print r'\n',R'\n'
HelloWorkd
HelloHello
e
l
el
Hl
He
olleH
True
True
\n \n

3.格式化字符串

Python 支持格式化字符串的输出 。尽管这样可能会用到很是复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。

代码示例:

print "My name is %s and age is %d !" % ("xh", 25)
My name is xh and age is 25 !

格式化符号:

格式化符号 说明
%c 格式化字符以及ASCII码
%s 格式化字符串
%d 格式化整数
%u 格式化无符号整数
%o 格式化无符号八进制数
%x 格式化无符号十六进制数
%X 格式化无符号十六进制数(大写)
%f 格式化浮点数字,可指定小数点后的精度。
%e 用科学计数法格式化浮点小数
%E 用科学计数法格式化浮点数,同%e的做用。
%g %f和%e的简写
%G %f和%E的简写
%p 用十六进制数格式化变量的地址

辅助指令:

符号 说明
* 定义宽度或者小数点精度
- 用做左对齐
+ 在正数前面显示加号
<sp> 在正数前面显示空格
# 在八进制数前面显示零,在十六进制前面显示0x或者0X
0 显示的数字前面填充0而不是默认的空格
% %% 输出一个单一的%
(var) 映射变量
m.n m是显示的最小总宽度,n是小数点后的位数

4.三引号

python中三引号能够将复杂的字符串进行复制:

  • python三引号容许一个字符串跨多行,字符串中能够包含换行符、制表符以及其余特殊字符。
  • 三引号的语法是一对连续的单引号或者双引号(一般都是成对的用)。

三引号让程序员从引号和特殊字符串的泥潭里面解脱出来,自始至终保持一小块字符串的格式是所谓的WYSIWYG(所见即所得)格式的。

5.字符串函数

Python中提供了不少操做字符串的函数,这些函数是字符串的使用更加便捷。如下将介绍常见的字符串操做:

string = "My name is xinghan, I am very happy!"
# 将起始字符大写,其余字符一概小写
string.capitalize()
'My name is xinghan, i am very happy!'
# 将字符串按照指定宽度居中显示,默认两端填补空格,也能够指定符号填补。
string.center(100)
string.center(100,"%")
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%My name is xinghan, I am very happy!%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%'
# 计数函数,用于统计一个字符串中出现的指定字符的个数。
string.count('a')
4
# 判断字符串以指定字符结尾
string.endswith('ppy!')
True
# 判断字符串是否以指定字符开始
string.startswith('My')
True
# 查找字符,找到返回下标,不存在返回-1。支持指定查找开始位置。
string.find('i')
string.find('i', 9)
12
# 查找字符,找到返回下标,不存在将报错。支持指定查找开始位置。
string.index('i', 9)
12
# 大小写转换
string.upper() #转成大写
string.lower() #转成小写
'my name is xinghan, i am very happy!'
# 标题判断,若是一个字符串中,首字母大写,其余字母所有小写,则断定为标题
string.istitle()
False
# 判断大小写
string.isupper()
string.islower()
False
# 去空,将字符串两端包含的空格,换行等空白去掉。不会去除中间的。
string.strip()
# 仅去除左边的空格
string.lstrip()
# 仅去除右边的空格
string.rstrip()
'My name is xinghan, I am very happy!'
# 将字符串中的大小写互换。
string.swapcase()
'mY NAME IS XINGHAN, i AM VERY HAPPY!'

三、boolen(布尔)

直接量只有两个True、False。

布尔类型的与或非and、or、not。

Python中指定任何非0和非空(null)值为true,0 或者 null为false。

代码示例:

flg1 = True
flg2 = False
print not flg1
print flg1 and flg2
print flg1 or flg2
False
False
True

四、空值

Python中的空值,不使用null,而是使用None来表示。

五、类型转换

Python中各个数据类型是能够互相转换的,转换方法以下:

  • index(x[,base]):将x转换为一个整型。
  • long(x[,base]):将x转换为一个长整型。
  • float(x):将x转换为一个浮点数。
  • complex(real[,imag]):建立一个复数。
  • str(x):将对象x转换为字符串。
  • repr(x):将对象x转换为表达式字符串。
  • eval(str):用来计算在字符串中的有效Python表达式,并返回一个对象。
  • tuple(s):将序列s转换为一个元组。
  • list(s):将序列s转换为一个列表。
  • chr(x):将一个整数转换为一个字符。
  • unichr(x):将一个整数转换为Unicode字符。
  • ord(x):将一个字符转换为它的整数值。
  • hex(x):将一个整数转换为一个十六进制字符串。
  • oct(x):将一个整数转换为一个八进制字符串。

6、运算符

Python中有7种运算符,分别是:

  • 算术运算符
  • 比较运算符
  • 赋值运算符
  • 位运算符
  • 逻辑运算符
  • 成员运算符
  • 身份运算符

一、算术运算符

算术运算符有如下几种:

  • +加:两个对象相加。例如:a + b输出结果30。
  • -减:获得负数或是一个数减去另外一个数。例如:a - b输出结果-10。
  • *乘:两个数相乘或是返回一个被重复若干次的字符串。例如:a * b输出结果200。
  • /除:x除以y。例如:b / a输出结果2。
  • %取模:返回除法的余数。例如:b % a输出结果0。
  • **幂:返回x的y次幂。例如:a**b为10的20次方,输出结果100000000000000000000。
  • //取整除:返回商的整数部分。例如:9//2输出结果4,9.0//2.0输出结果4.0。

代码示例:

a = 20
b = 10
print a + b
print a - b
print a * b
print a / b
print a % b
print a ** b
print a // b
30
10
200
2
0
10240000000000
2

二、比较运算符

比较运算符又称为关系运算符,有如下几种:

  • ==等于:比较对象是否相等
  • !=不等于:比较两个对象是否不相等
  • <>不等于:比较两个对象是否不相等
  • >大于:判断大小。
  • <小于:判断大小。
  • >=大于等于:判断是否大于等于。
  • <=小于等于:判断是否小于等于。

代码示例:

a = 10;b = 20
print a == b
print a != b
print a <> b
print a > b
print a < b
print a >= b
print a <= b
False
True
True
False
True
False
True

三、赋值运算符

Python中有如下几种赋值运算符:

  • =:简单的赋值运算符。c = a + b 将 a + b 的运算结果赋值为 c
  • +=:加法赋值运算符。c += a 等效于 c = c + a
  • -=:减法赋值运算符。c -= a 等效于 c = c - a
  • *=:乘法赋值运算符。c *= a 等效于 c = c * a
  • /=:除法赋值运算符。c /= a 等效于 c = c / a
  • %=:取模赋值运算符。c %= a 等效于 c = c % a
  • **=:幂赋值运算符。c **= a 等效于 c = c ** a
  • //=:取整除赋值运算符。c //= a 等效于 c = c // a

四、位运算符

Python中有如下几种位运算符:

  • &按位与运算符:参与运算的两个值,若是两个相应位都为1,则该位的结果为1,不然为0 (a & b) 输出结果 12 ,二进制解释:0000 1100
  • |按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。(a | b) 输出结果 61 ,二进制解释:0011 1101
  • ~按位取反运算符:对数据的每一个二进制位取反,即把1变为0,把0变为1。(~a ) 输出结果 -61 ,二进制解释:1100 0011,在一个有符号二进制数的补码形式。
  • ^按位异或运算符:当两对应的二进位相异时,结果为1 (a ^ b) 输出结果 49 ,二进制解释:0011 0001
  • <<左移动运算符:运算数的各二进位所有左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。a << 2 输出结果 240 ,二进制解释: 1111 0000
  • >>右移动运算符:把">>"左边的运算数的各二进位所有右移若干位,">>"右边的数指定移动的位数。a >> 2 输出结果 15 ,二进制解释: 0000 1111

五、逻辑运算符

Python中有如下几种逻辑运算符:

  • and与
  • or或
  • not非

三种逻辑运算分为布尔型逻辑运算,和非布尔型逻辑运算。

布尔型的逻辑运算是正常的运算,很好理解。

非布尔型的逻辑运算须要遵循如下几点:

  • 非布尔型全部为空值的认为是False,非空值都为True。
  • 运算过程当中都是短路逻辑运算,and和or能判断出正确结果,那么返回最后一个判断条件的值。
  • 非布尔型的not运算返回的都是True或False。

代码示例:

# number逻辑运算
x = 10; y = 20
print x and y
print x or y
print not x
20
10
False
# String的逻辑运算
x = "a"; y = "b"
print x and y
print x or y
print not x
b
a
False
#String与Number的逻辑运算
x = 10 ; y = "a"
print x and y
print x or y
a
10

六、成员运算符

Python中提供了两种成员运算符:

  • in:若是指定的序列中找到值,则返回True,不然返回False。
  • not in:若是指定的序列中没有找到值,返回True,不然返回False。

代码示例:

# 字符串成员判断
a = "x"; b = "xyz"
print a in b
print a not in b
True
False
# 序列成员判断
a = "x"; b = ["x", "y", "z"]
print a in b
print a not in b
True
False

七、身份运算符

Python中提供了两种身份运算符:

  • is:判断两个标识符是不是统一对象。
  • is not:普安段两个标识符是不是不一样对象。

代码示例:

a = 1;b = 1
print a is b
print a is not b
True
False

八、运算符优先级

Python中运算符的优先级从高到低以下:

  • 1.** 指数 (最高优先级)
  • 2.~、+、- 按位翻转,一元加号和减号 (最后两个的方法名为 +@ 和 -@)
  • 3.*、/、%、// 乘,除,取模和取整除
  • 4.+、- 加法减法
  • 5.>>、<< 右移,左移运算符
  • 6.& 位 'AND'
  • 7.^、| 位运算符
  • 8.<=、<、>、>= 比较运算符
  • 9.<>、==、!= 等于运算符
  • 10.=、%=、/=、//=、-=、+=、*=、**= 赋值运算符
  • 11.is、is not 身份运算符
  • 12.in、not in 成员运算符
  • 13.not、or、and 逻辑运算符

7、拷贝和赋值

Python中的拷贝和赋值,针对对象,有不一样层次的流程,具体以下。

一、直接赋值

直接赋值其实就是将对象的引用给到变量。

以下图:

二、浅拷贝(copy)

只是拷贝父对象,不会拷贝对象内部的子对象。

以下图:

三、深拷贝(deepcopy)

彻底拷贝父对象以及子对象。此时的拷贝,两个对象彻底脱离了关系,是两个独立的对象,不会互相影响。

以下图:

8、流程控制

Python中提供了和其余语言同样的流程控制语句。其中包含:

  • 条件判断
  • 循环

一、条件判断语句

Python中的条件判断语句由if、elif、else组合搭配构成。其语法大体有以下两种:

if condition:
    do somthing
else:
    do somthing
if condition:
    do somthing
elif condition:
    do somthing
else:
    do somthing

在Python中,任意值均可做为条件,全部类型的空值为False,除空值以外其余全为True。

assert断言

在程序编写过程当中,常用断言来判断代码逻辑执行的正确与否。

代码示例:

age = 10
assert age = 20 # 不是预期的效果就会报错,致使程序中断,就能够缩小程序出错的范围。
File "<ipython-input-7-cdbb8299e85a>", line 2
    assert age = 20 # 不是预期的效果就会报错,致使程序中断,就能够缩小程序出错的范围。
               ^
SyntaxError: invalid syntax

二、循环语句

Python中的循环语句包含两种,分别是:

  • while
  • for

1.while循环

while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理须要重复处理的相同任务。

有以下两种语法:

while condition:
    do somthing
while condition:
    do somthing
else:
    do somthing

判断条件能够是任何表达式,任何非零、或非空(null)的值均为true。

while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过该次循环,break 则是用于退出循环,此外"判断条件"还能够是个常值,表示循环一定成立。若是判断条件永远为True,那么循环将永远执行下去,造成无线循环。

2.for循环

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

语法以下:

for interating_var in sequence:
    do somthing
for index in range:
    do somthing

代码示例:

data = [1,2,3,4]
for i in data:
    print i,
1 2 3 4
for i in range(10):
    print i,
0 1 2 3 4 5 6 7 8 9

在python中,for…else表示:for中的语句和普通的没有区别,else中的语句会在循环正常执行完(即for不是经过break跳出而中断的)的状况下执行,while … else 也是同样。

代码示例:

for num in range(10,20):  # 迭代 10 到 20 之间的数字
   for i in range(2,num): # 根据因子迭代
      if num % i == 0:      # 肯定第一个因子
         j = num / i          # 计算第二个因子
         print '%d 等于 %d * %d' % (num,i,j)
         break            # 跳出当前循环
   else:                  # 循环的 else 部分
      print num, '是一个质数'
10 等于 2 * 5
11 是一个质数
12 等于 2 * 6
13 是一个质数
14 等于 2 * 7
15 等于 3 * 5
16 等于 2 * 8
17 是一个质数
18 等于 2 * 9
19 是一个质数

3.循环嵌套

Python 语言容许在一个循环体里面嵌入另外一个循环。

能够在循环体内嵌套相同的循环体,如在for循环中嵌入for循环,在while循环中嵌入while循环;也能够在循环体内嵌入其余的循环体,如在while循环中能够嵌入for循环,能够在for循环中嵌入while循环。

代码示例:

i = 2
while(i < 100):
   j = 2
   while(j <= (i / j)):
      if not(i%j): break
      j = j + 1
   if (j > i / j) : print i, " 是素数",
   i = i + 1
 
print "Good bye!"
2  是素数 3  是素数 5  是素数 7  是素数 11  是素数 13  是素数 17  是素数 19  是素数 23  是素数 29  是素数 31  是素数 37  是素数 41  是素数 43  是素数 47  是素数 53  是素数 59  是素数 61  是素数 67  是素数 71  是素数 73  是素数 79  是素数 83  是素数 89  是素数 97  是素数 Good bye!
# 乘法口诀表
for a in range(1,10):
   for b in range(1,a + 1):
       print "%d*%d=%d\t" % (b,a,b * a),
   print '\n'
1*1=1	

1*2=2	2*2=4	

1*3=3	2*3=6	3*3=9	

1*4=4	2*4=8	3*4=12	4*4=16	

1*5=5	2*5=10	3*5=15	4*5=20	5*5=25	

1*6=6	2*6=12	3*6=18	4*6=24	5*6=30	6*6=36	

1*7=7	2*7=14	3*7=21	4*7=28	5*7=35	6*7=42	7*7=49	

1*8=8	2*8=16	3*8=24	4*8=32	5*8=40	6*8=48	7*8=56	8*8=64	

1*9=9	2*9=18	3*9=27	4*9=36	5*9=45	6*9=54	7*9=63	8*9=72	9*9=81

4.循环控制语句

break

Python break语句,就像在C语言中,打破了最小封闭for或while循环。

break语句用来终止循环语句,即循环条件没有False条件或者序列还没被彻底递归完,也会中止执行循环语句。

break语句用在while和for循环中。

若是使用嵌套循环,break语句将中止执行最深层的循环,并开始执行下一行代码。

代码示例:

for letter in 'Python':     # 第一个实例
   if letter == 'h':
      break
   print '当前字母 :', letter
  
var = 10                    # 第二个实例
while var > 0:              
   print '当前变量值 :', var
   var = var -1
   if var == 5:   # 当变量 var 等于 5 时退出循环
      break
 
print "Good bye!"
当前字母 : P
当前字母 : y
当前字母 : t
当前变量值 : 10
当前变量值 : 9
当前变量值 : 8
当前变量值 : 7
当前变量值 : 6
Good bye!
continue

Python continue 语句跳出本次循环,而break跳出整个循环。

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

continue语句用在while和for循环中。

代码示例:

for letter in 'Python':     # 第一个实例
   if letter == 'h':
      continue
   print '当前字母 :', letter
 
var = 10                    # 第二个实例
while var > 0:              
   var = var - 1
   if var == 5:
      continue
   print '当前变量值 :', var
print "Good bye!"
当前字母 : P
当前字母 : y
当前字母 : t
当前字母 : o
当前字母 : n
当前变量值 : 9
当前变量值 : 8
当前变量值 : 7
当前变量值 : 6
当前变量值 : 4
当前变量值 : 3
当前变量值 : 2
当前变量值 : 1
当前变量值 : 0
Good bye!
pass

pass是空语句,是为了保持程序结构的完整性。pass 不作任何事情,通常用作占位语句。

代码示例:

# 输出 Python 的每一个字母
for letter in 'Python':
   if letter == 'h':
      pass
      print '这是 pass 块'
   print '当前字母 :', letter

print "Good bye!"
当前字母 : P
当前字母 : y
当前字母 : t
这是 pass 块
当前字母 : h
当前字母 : o
当前字母 : n
Good bye!

5.推导式

所谓推导式,就是一种从一个数据序列构件另外一个数据序列的方法。

代码示例:

number = list(range(10))
number
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
列表推导式

代码示例:

# 利用列表进行列表推导
li = [i * 10 for i in number]
li
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
字典推导式

代码示例:

# 利用列表进行字典key推导
di = {i : "b" for i in number}
di
{0: 'b',
 1: 'b',
 2: 'b',
 3: 'b',
 4: 'b',
 5: 'b',
 6: 'b',
 7: 'b',
 8: 'b',
 9: 'b'}

上一篇:Windows中安装Python3.7

下一篇:Python的数据结构

相关文章
相关标签/搜索