Python速成

Python3 基础语法

目录

Python3 基础语法

标识符

python保留字

注释

行与缩进

多行语句

空行

print 输出

import 与 from...import

end 关键字

补充

Python3 基本数据类型

Number(数字)

String(字符串)

List(列表)

Tuple(元组)

Set(集合)

Dictionary(字典)

Python 推导式

列表(list)推导式

字典(dict)推导式

集合(set)推导式

元组(tuple)推导式

Python3 运算符

算术运算符

比较(关系)运算符

赋值运算符

逻辑运算符

位运算符

成员运算符

身份运算符

Python3 条件控制

Python3 循环语句

while

for 语句

range()函数

pass 语句


标识符

和c一样

python保留字

Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:

['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

注释

Python中单行注释以#开头

多行注释可以用多个#号,还有'''"""

行与缩进

python最具特色的就是使用缩进来表示代码块,不需要使用大括号{}

缩进的空格数是可变的,但是同一个代码块的语句必须包含相同的缩进空格数。

多行语句

Python 通常是一行写完一条语句,但如果语句很长,我们可以使用反斜杠 \ 来实现多行语句

在 [], {}, 或 () 中的多行语句,不需要使用反斜杠 \

空行

函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。

print 输出

print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=""

Python速成_第1张图片

import 与 from...import

在 python 用 import 或者 from...import 来导入相应的模块。

将整个模块(somemodule)导入,格式为: import somemodule

从某个模块中导入某个函数,格式为: from somemodule import somefunction

从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc

将某个模块中的全部函数导入,格式为: from somemodule import *

end 关键字

关键字end可以用于将结果输出到同一行,或者在输出的末尾添加不同的字符

补充

Python句子后面是没有分号的,但要注意缩进,这是python和C,Java的区别

Python3 基本数据类型

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

Python3 中有六个标准的数据类型:Number(数字)String(字符串)List(列表)Tuple(元组)Set(集合)Dictionary(字典)

Number(数字)

Python3 支持 int、float、bool、complex(复数)

注意:Python3 中,bool 是 int 的子类,True 和 False 可以和数字相加, True==1、False==0 会返回 True,但可以通过 is 来判断类型。

>>> True==1

True

>>> False==0

True

>>> True+1

2

>>> False+1

1

>>> 1 is True

False

>>> 0 is False

False

1、Python可以同时为多个变量赋值,如a, b = 1, 2

2、一个变量可以通过赋值指向不同类型的对象

3、数值的除法包含两个运算符:/ 返回一个浮点数,// 返回一个整数

4、在混合计算时,Python会把整型转换成为浮点数

>>> 2 / 4 # 除法,得到一个浮点数
0.5
>>> 2 // 4 # 除法,得到一个整数
0
>>> 17 % 3 # 取余
2
>>> 2 ** 5 # 乘方
32

String(字符串)

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

字符串的截取的语法格式:变量[头下标:尾下标]

Python速成_第2张图片

基本思路:绝对值+1 到 绝对值+1

字符串的顺序

0 1 2 3
h e a r
-4 -3 -2 -1

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

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

与 C 字符串不同的是,Python 字符串不能被改变。向一个索引位置赋值,比如word[0] = 'm'会导致错误。

注意:

1、反斜杠可以用来转义,使用r可以让反斜杠不发生转义。

2、字符串可以用+运算符连接在一起,用*运算符重复。

3、Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。

4、Python中的字符串不能改变。

List(列表)

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

列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

列表是写在方括号 [] 之间、用逗号分隔开的元素列表。

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

列表截取的语法格式和String一样,与Python字符串不一样的是,列表中的元素是可以改变的

Python速成_第3张图片

注意:

1、List写在方括号之间,元素用逗号隔开。

2、和字符串一样,list可以被索引和切片。

3、List可以使用+操作符进行拼接。

4、List中的元素是可以改变的。

Python 列表截取可以接收第三个参数,参数作用是截取的步长,如果第三个参数为负数表示逆向读取

Tuple(元组)

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

Python速成_第4张图片

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

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

tup1 = () # 空元组

tup2 = (20,) # 一个元素,需要在元素后添加逗号

Set(集合)

集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。

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

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

Python速成_第5张图片

Dictionary(字典)

字典(dictionary)是Python中另一个非常有用的内置数据类型。列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。键(key)必须使用不可变类型。在同一个字典中,键(key)必须是唯一的。

Python速成_第6张图片

Python 推导式

列表(list)推导式

[表达式 for 变量 in 列表]

[out_exp_res for out_exp in input_list]

或者

[表达式 for 变量 in 列表 if 条件]

[out_exp_res for out_exp in input_list if condition]

out_exp_res:列表生成元素表达式,可以是有返回值的函数。

for out_exp in input_list:迭代 input_list 将 out_exp 传入到 out_exp_res 表达式中。

if condition:条件语句,可以过滤列表中不符合条件的值。

过滤掉长度小于或等于3的字符串列表,并将剩下的转换成大写字母:

Python速成_第7张图片

字典(dict)推导式

字典推导基本格式

{ key_expr: value_expr for value in collection }

{ key_expr: value_expr for value in collection if condition }

Python速成_第8张图片

集合(set)推导式

集合推导式基本格式:

{ expression for item in Sequence }

{ expression for item in Sequence if conditional }

Python速成_第9张图片

元组(tuple)推导式

元组推导式可以利用 range 区间、元组、列表、字典和集合等数据类型,快速生成一个满足指定需求的元组。

元组推导式基本格式:

(expression for item in Sequence )

(expression for item in Sequence if conditional )

元组推导式和列表推导式的用法也完全相同,只是元组推导式是用 () 圆括号将各部分括起来,而列表推导式用的是中括号 [],另外元组推导式返回的结果是一个生成器对象。例如:

Python速成_第10张图片

# 使用 tuple() 函数,可以直接将生成器对象转换成元组

Python速成_第11张图片

Python3 运算符

算术运算符

和c差不多一样,不一样的有 ** 乘方,取整除(向下取接近商的整数)

比较(关系)运算符

和Java一样

赋值运算符

和Java一样,除了一个“海象运算符”,但是不重要

逻辑运算符

and:相当于C里的&&

or: 相当于C里的||

not: 相当于C里的!

位运算符

和c一样

成员运算符

in: 如果在指定的序列中找到值返回 True,否则返回 False。

not in: 如果在指定的序列中没有找到值返回 True,否则返回 False。

身份运算符

is:是判断两个标识符是不是引用自一个对象

is not:是判断两个标识符是不是引用自不同对象

Python3 条件控制

和C的不同:

1.if后没有“()”,相反,要有“:”,else后也要有“:”

2. Python 中用 elif 代替了 else if,所以if语句的关键字为:if – elif – else。

3. 注意:

a、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。

b、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。

c、在Python中没有switch – case语句。

Python3 循环语句

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

while

和C不一样的是:

  1. while后没括号,有“:”
  2. 如果while后面成为false,while后面可以加上else,例如:

Python速成_第12张图片

for 语句

Python for 循环可以遍历任何可迭代对象,如一个列表或者一个字符串。

for循环的一般格式如下:

for in : else:

Python速成_第13张图片

Python里面也有break语句:

Python速成_第14张图片

同理,python里也有continue语句

range()函数

遍历数字序列,可以使用内置range()函数。它会生成数列

Python速成_第15张图片

也可以使range以指定数字开始并指定不同的增量(可以是负数,有时这也叫做'步长'):

Python速成_第16张图片

pass 语句

Python pass是空语句,是为了保持程序结构的完整性。

pass 不做任何事情,一般用做占位语句

你可能感兴趣的:(python,开发语言)