Python 3 学习指南
语法部分
基础语法
标识符
1)由字母、数字下划线组成,且大小写敏感。
2)查看保留字可以用
keyword.keylist
k
e
y
w
o
r
d
.
k
e
y
l
i
s
t
。
注释
1)单行注释用#。
2)多行注释用”’(三个单引号)包含起来。
多行语句
1)如果多行语句可以在行末加上 \ ,若是在[ ],{ },( )内的语句,不需要 \ 。
2)若果需要在一行写多条语句,需要在行末加分号。
print用法
print
p
r
i
n
t
默认输出是换行的,如果需要不换行,print(a,end=” “)。
基本数据类型
Python3 P y t h o n 3 中有多种数据类型,包括数字,字符串,列表,元组,集合,字典。
赋值
1)多变量赋一个值
a=b=c=1
a
=
b
=
c
=
1
。
2)多变量赋不同值
a,b,c=1,2,"pengwill"
a
,
b
,
c
=
1
,
2
,
"
p
e
n
g
w
i
l
l
"
。
数字类型
Python3 P y t h o n 3 支持 int、float、bool、complex i n t 、 f l o a t 、 b o o l 、 c o m p l e x (复数)。
类型查看
1)可以用
type()
t
y
p
e
(
)
函数查看变量的对象类型。
2)或者用
isinstance(a,int)
i
s
i
n
s
t
a
n
c
e
(
a
,
i
n
t
)
来查看对象类型。
>>> a=100
>>> print(type(a))
<class 'int'>
>>> isinstance(a,int)
Ture
区别在于:
1)
type()
t
y
p
e
(
)
不会认为子类是一种父类类型。
2)
isinstance()
i
s
i
n
s
t
a
n
c
e
(
)
会认为子类是一种父类类型。
删除操作
1)可以用
del
d
e
l
+ 变量名,来删除一个变量。
2)如若删除多个变量,用逗号分割开。
数值运算
>>> 5+3 # 加法
>>> 4.0-3 # 减法
>>> 4.0*5 # 乘法
>>> 100/3 # 除法,得到浮点数
>>> 100//3 # 除法,得到整数
>>> 100%3 # 取余
>>> 100**3 # 乘方
值得注意的是,在混合计算的时候,Python会把整数转换成浮点数进行运算。
String(字符串)
Index 索引与操作
1)字符串的索引值从0开始,-1表示倒数第二个。
2)+ 符号表示字符串的连接,* 字符表示字符串的复制次数(后面跟数字)。
3)
Python
P
y
t
h
o
n
中的字符串用单引号或双引号括起来,同时使用反斜杠()转义字符。
4)
Python
P
y
t
h
o
n
中的字符串不能发生改变,如str[0] = ‘a’会出错。
str = "pengwill"
print(str) # 直接输出字符串
print(str[0:-1]) # 输出从第0个字符 到 倒数第2个字符
print(str[2:]) # 输出从第3个字符到末尾
print(str*2) # 输出str两遍
print(str + "hello") # 连接两个字符串
len(str) # 求解字符串长度
格式化输出
使用类似C语言的输出方法。
1)基本形式为:print (“%s %d” % (‘abc’, 10))。
2)格式字符串同C语言,字符为%c,字符串%s,整数%d,浮点数%f,八进制%o,十六进制%x,科学计数法%e。
3)在字符串前加r/R表示原始字符串,原样输出。
循环遍历
使用此方法可以循环遍历字符串中的每一个字符
str = "pengwill"
for letter in str:
dosomething
List(列表)
1)列表中的元素可以是任何数据类型,包括列表自身(嵌套)。
2)列表要用方括号[ ] 括起来,表示这是一个列表。
3)Index索引操作与字符串一致。
4)列表中的元素可以进行修改。
5)列表元素的删除,可以采用
list[sta:end+1]= [ ]
l
i
s
t
[
s
t
a
:
e
n
d
+
1
]
=
[
]
的方法。
6)求解列表长度可以用
len()
l
e
n
(
)
方法。
7)列表中每个元素循环的方式同字符串。
Tuple(元组)
1)与list类似,不同之处在于元组不能修改,且需要用小括号( )。
2)构造一个空元组
tup1=()
t
u
p
1
=
(
)
。
3)构造一个元素的元组
tup2=(20,)
t
u
p
2
=
(
20
,
)
,后面的逗号不能省略。
4)当需要函数返回多个参数的时候,实际是以元组形式返回的。
Set(集合)
1)集合中不允许包含重复元素。
2)可以用大括号{}或者set(),来创建一个集合,但是空集合必须使用set()来创建,因为空的{}表示创建一个空字典。
list1 =["a","b","c","d"]
a = set(list1)
b = set(list1[0:3])
print(a - b) # a和b的差集
print(a | b) # a和b的并集
print(a & b) # a和b的交集
print(a ^ b) # a和b中不同时存在的元素
Dictionary(字典)
1)字典类似于
c++STL
c
+
+
S
T
L
里的
map
m
a
p
,key和value一一对应,但
key
k
e
y
并不是有序排列的。
2)字典用大括号{ },并且键与值之间要用冒号 : 连接,不同元素之间用逗号 , 分隔。
3)
key
k
e
y
不可以修改,且
key
k
e
y
唯一。
4)创建空字典用
dict={}
d
i
c
t
=
{
}
。
输出操作
dict = {"mydic":1,"yourdic":2}
print(dict) # 输出完整的字典
print(dict.keys()) # 输出所有key
print(dict.values()) # 输出所有的value
print(dict["mydic"]) # 输出key为mydic的value
类型转换
语法 | 作用 | 解释 |
---|---|---|
int(x,base) i n t ( x , b a s e ) | 将字符串或整数转换为整数 | x x 为字符串或数字,为进制,默认十进制 |
float(x) f l o a t ( x ) | 将字符串或者整数转换为浮点数 | 其中 x x 为字符串或者数字 |
将对象转换为字符串 | x x 为一个对象 | |
计算字符串中的有效 Python P y t h o n 表达式 | str s t r 为一个字符串类型计算表达式 | |
tuple(x)/list(x) t u p l e ( x ) / l i s t ( x ) | 将 x x 转换为元组/列表 | 可为一个 list/tuple l i s t / t u p l e |
ord(x) o r d ( x ) | 将字符 x x 转换为对应整数值 | x x 为单个字符 |
将整数 x x 转换为一个十六进制字符串 | 为一个整数 | |
oct(x) o c t ( x ) | 将整数 x x 转换为八进制字符串 | 为一个整数 |
运算符
基本运算符
1)算数运算符、比较运算符、 赋值运算符、位运算符和C语言一致。
2)不同的是:
∗∗
∗
∗
(两个乘号)表示次幂运算,
//
/
/
(两个斜线)表示整除运算。
逻辑运算符
运算符 | 表达式 | 解释 | 例子 |
---|---|---|---|
and a n d | a and b a a n d b | 布尔与,当 a a 为时返回 False F a l s e ,否则返回 b b 的值 | |
or o r | a or b a o r b | 布尔或,当 a a 为返回 x x 的值,否则返回的值 | 1 or 2=1 1 o r 2 = 1 |
not n o t | not x n o t x | 布尔非,返回非 x x |
成员运算符
运算符 | 解释 | 例子 |
---|---|---|
in i n | 若对象在指定序列里,返回 True T r u e ,否则返回 Fasle F a s l e ,常用于循环 | for letter in wordlist f o r l e t t e r i n w o r d l i s t |
not in n o t i n | 若对象不在指定序列里,返回 True T r u e ,否则返回 False F a l s e | \ |
身份运算符
比较两个对象是否为一个存储单元的内容。
id(x)
i
d
(
x
)
用于获取对象
x
x
的内存地址编号。