python 两种执行模式:
交互模式:python3
解释执行模式: python3 xxxx.py
python 的注释:
# 开头直至行尾
数据类型:数字类型
整数型int,浮点型float<如果无限小数,无法真实表达>,复数complex,布尔型bool
变量:
变量名(标识符)不可以是关键字:if True False None while
赋值语句:
变量名=表达式(数字,运算符,函数调用,类,、、、、)
del语句:删除变量
del 变量名
复合赋值语句:
用法:变量名 += 表达式
函数: print(标准输出)
input(显示引号内字符,并要求键入)
float(obj)
int
complex
bool
说明:函数调用是表达式,通常用于返回一个对象的引用关系。
bool(x)返回的情况:
None 空值
0,0.0,0j(所有0类型)
预置(内建)的数值型函数:
abs(x) 取x得绝对值
round(number,ndigits)对数值进行四舍五入:
(由于先转换二进制后四舍五入,因此会有误差,高精度计算不可用)
实例:n = 123.4567
round(n) = 123
round(n,3)=123.457
round(n,-2)=100.0
ndigits是小数向右取整的位数,负数表示向左取整
pow(x,y)相当于 x**y 或 pow(x,y,z)相当于 x**y%z
help查看函数(交互模式下):help(函数名)
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
语句:
语句是python执行的最小单位,语句可以独立执行。
多条语句写在一行内需要用“;”隔开,通常一条语句单独写一行(复合语句除外)
折行符‘\’:写在语句末,告诉解释执行器,下一行也是此语句内容
隐式换行:所有的括号内容换行时,解释执行器会自动去下一行找到相对应的括号,直到找到为止。(直接回车即可)
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
基本输入输出函数:
input:【此输入的都是字符串格式】输入时,末尾的换行字符会被删除,输入的字符串可以为空。
print:print(v,...,sep='',end='')
sep:separate,对前边所有值任意两个值之间的分隔符,默认一个字符' ',可任意加‘*&……’
end:输出完成后在末尾自动追加一个字符串,默认为\n,换行符,若写了其他的,如‘ ’则打印之间只有一个空格。
if语句
作用:让程序根据条件选择性的执行某条语句或某些语句
语法:
if 真值表达式1:
语句块1
elif 真值表达式2:
语句块2
elif 真值表达式3:
语句块3
...
else:
语句块4
说明:
1.真值判断会自上而下进行,如果有一条为True,则执行其中的语句,然后结束if语句的执行,
如果所有真值表达式都为False,则执行else/elif里的语句
2.elif子语句可以有0个或多个
3.else最多只能有一个
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
条件表达式:
语法:表达式1 if 真值表达式 else 表达式2
作用:
如果真值表达式的布尔值为True时,执行表达式1,并返回结果对象的引用,否则执行表达式2,并返回对象的引用
例:1.print(i if i >0 else -i)
2.i = i if i >= 0 else -i
print(i)
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
布尔运算: not and or (运算优先级低于运算符号)
布尔“非”操作:not X
作用:对X进行布尔取非,如bool(X)为True,则返回False,否则返回True
示例:s=input("请输入一个整数")
n=int(X)
if xxxxx
print("n不大于0")
布尔“与”操作:X and Y
规则:优先返回假值对象,当X的布尔值为“假”时返回X,否则返回Y
示例:100 and 200 #
>>200
True and False #
>>False
True and True #
>>True
~~~~ ···~~~~ ····~~~ ·· ··~~~ ·····~~~ ····~~ ~···~~~~ ···~~~ ··· · · ·· ~
【注:此语句会从左至右一直判断,直到有0出现,返回0,如果一直没有0出现,则返回最后一个值】
布尔“或”操作:X or Y
规则:优先返回真值对象,当X的布尔值为“真”时返回X,否则返回Y(比较0和0.0即可知)
示例:100 or 200 #
>>100
True or False #
>>True
True or True #
>>True
False or False #
>>False
~~~~ ···~~~~ ····~~~ ·· ··~~~ ·····~~~ ····~~ ~···~~~~ ···~~~ ··· · · ·· ~
【注:此语句会从左至右一直判断,直到有 非0 出现,返回 非0,
如果一直没有 非0 出现(即全为0),则返回0】
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pass语句:即为 空白语句块,类似占位符号
示例: pass
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
字符串 str(charactor string)
作用:用来记录文本信息
表示方法:
'hello'
"hello"
"""hello"""
'''hello'''
三单引号和三双引号,所见即所得,输入什么就输出什么。换行会自动转换为换行符‘\n’。
(用print的时候才会正常显示)
注:主要解决引用语句内部引号重复问题
隐式字符串拼接。
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
用转译序列代表特殊的字符:
字符串字面值中,用字符反斜杠\
后跟一些字符代表特殊的一个字符:
例:
\' 代表一个单引号
\'\'\'代表三单引号
\" 代表一个双引号
\n 代表一个换行符
转义字符表:
\\ 反斜杠
\r 返回光标至首行
\f 换页
\t 水平制表符
\v 垂直制表符
\b 退格
\0 字符串,字符值为零
\xXX XX 为两位十六位进制的标识符。
\uXXXX UNICODE16 的十六进制表示的字符
\UXXXXXXXX UNICODE32 的十六进制表示方式
字符串的运算:
+ += * *=
示例:>>> "你好"+"中国"
'你好中国'
>>> a="你好"
>>> b="中国"
>>> c=a+b
>>> c
'你好中国'
>>> '中国'*3
'中国中国中国'
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
unicode编码:(全世界字符统一编码)
分类:UNICODE16(两个字节)
格式:
r'字符串内容'
r"xx"
r'''xx'''
r"""xx"""
作用:让转译符号\无效
实例:# 转译之后的字符串
a='C:\newfile\test.py'
print(a)
# 未转译raw字符串
a= r'C:\newfile\test.py'
print(a)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
字符串的比较:
< <= > >= == !=
比较规则:字符串的比较是按ascii编码值进行依次比较
优先比较两个字符串第一个字符,如果不同直接得出ascii大小,如果相同,则比较第二个字符。
【每次只比较一个字符,不是比较和的大小!!!】
(见: man ascii)
示例:(即比较字符串ascii编码的大小,从左往右依次比较,田忌赛马规则)
'A' < 'B' # True
‘ABC’<'ACB' # True
'AD'>'ABC' # True
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
len(x)函数:
示例:
s= input(“请输入:”)
print("您输入",len(s),"个字符")
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
in/not in运算符
作用:用于序列,字典,集合等容器中,用于判断某个值是否存在与容器中
not in 与 in的运算符结果相反
格式:对象 in 序列
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
字符串的索引操作index:
Python字符串是不可改变的字符序列。
语法:字符串[整数表达式]
说明:
Python序列都可以用索引来访问序列中的对象
Python序列的正向索引是从0开始的,第二个索引为1,最后一个索引为len(x)-1
python的反向索引是从-1开始的,-1代表最后一个,-2代表倒数第二个,第一个是-len(s)
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
切片:slice
从字符串序列中去除相应的元素,中心组成一个字符串序列
语法:
字符串[开始index:结束index:步长s]
说明:
1.开始index是切片切下的位置,-1代表最后一个元素,结束index不包含
2.步长是切片每次获取当前元素后移动的长度和方向,正号是向右,符号为向左。
步长不写,默认为1,即依次排列,反之亦反。
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
字符串编码转换函数:
ord(c) 返回字符c对应的编码值
chr(c) 返回编码值c对应的字符
整数转换为字符串函数:
hex(i) 将整数转换为 十六进制 字符串
oct(i) 将整数转换为 八进制 字符串
bin(i) 将整数转换为 二进制 字符串
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
经典比大小算法:
a = int(input(’enter your first number‘))
b = int(input(’enter your second number‘))
c = int(input(’enter your third number‘))
m = a
if m < b:
m = b
if m < c:
m = c
print(m)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
交互模式:python3
解释执行模式: python3 xxxx.py
python 的注释:
# 开头直至行尾
数据类型:数字类型
整数型int,浮点型float<如果无限小数,无法真实表达>,复数complex,布尔型bool
变量:
变量名(标识符)不可以是关键字:if True False None while
赋值语句:
变量名=表达式(数字,运算符,函数调用,类,、、、、)
del语句:删除变量
del 变量名
复合赋值语句:
用法:变量名 += 表达式
比较运算符:
> < >= <= ==(等于) !=(不等于)
语法:左表达式 < 右表达式
函数: print(标准输出)
input(显示引号内字符,并要求键入)
float(obj)
int
complex
bool
说明:函数调用是表达式,通常用于返回一个对象的引用关系。
bool(x)返回的情况:
None 空值
0,0.0,0j(所有0类型)
预置(内建)的数值型函数:
abs(x) 取x得绝对值
round(number,ndigits)对数值进行四舍五入:
(由于先转换二进制后四舍五入,因此会有误差,高精度计算不可用)
实例:n = 123.4567
round(n) = 123
round(n,3)=123.457
round(n,-2)=100.0
ndigits是小数向右取整的位数,负数表示向左取整
pow(x,y)相当于 x**y 或 pow(x,y,z)相当于 x**y%z
help查看函数(交互模式下):help(函数名)
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
语句:
语句是python执行的最小单位,语句可以独立执行。
多条语句写在一行内需要用“;”隔开,通常一条语句单独写一行(复合语句除外)
折行符‘\’:写在语句末,告诉解释执行器,下一行也是此语句内容
隐式换行:所有的括号内容换行时,解释执行器会自动去下一行找到相对应的括号,直到找到为止。(直接回车即可)
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
基本输入输出函数:
input:【此输入的都是字符串格式】输入时,末尾的换行字符会被删除,输入的字符串可以为空。
print:print(v,...,sep='',end='')
sep:separate,对前边所有值任意两个值之间的分隔符,默认一个字符' ',可任意加‘*&……’
end:输出完成后在末尾自动追加一个字符串,默认为\n,换行符,若写了其他的,如‘ ’则打印之间只有一个空格。
if语句
作用:让程序根据条件选择性的执行某条语句或某些语句
语法:
if 真值表达式1:
语句块1
elif 真值表达式2:
语句块2
elif 真值表达式3:
语句块3
...
else:
语句块4
说明:
1.真值判断会自上而下进行,如果有一条为True,则执行其中的语句,然后结束if语句的执行,
如果所有真值表达式都为False,则执行else/elif里的语句
2.elif子语句可以有0个或多个
3.else最多只能有一个
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
条件表达式:
语法:表达式1 if 真值表达式 else 表达式2
作用:
如果真值表达式的布尔值为True时,执行表达式1,并返回结果对象的引用,否则执行表达式2,并返回对象的引用
例:1.print(i if i >0 else -i)
2.i = i if i >= 0 else -i
print(i)
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
布尔运算: not and or (运算优先级低于运算符号)
布尔“非”操作:not X
作用:对X进行布尔取非,如bool(X)为True,则返回False,否则返回True
示例:s=input("请输入一个整数")
n=int(X)
if xxxxx
print("n不大于0")
布尔“与”操作:X and Y
规则:优先返回假值对象,当X的布尔值为“假”时返回X,否则返回Y
示例:100 and 200 #
>>200
True and False #
>>False
True and True #
>>True
~~~~ ···~~~~ ····~~~ ·· ··~~~ ·····~~~ ····~~ ~···~~~~ ···~~~ ··· · · ·· ~
【注:此语句会从左至右一直判断,直到有0出现,返回0,如果一直没有0出现,则返回最后一个值】
布尔“或”操作:X or Y
规则:优先返回真值对象,当X的布尔值为“真”时返回X,否则返回Y(比较0和0.0即可知)
示例:100 or 200 #
>>100
True or False #
>>True
True or True #
>>True
False or False #
>>False
~~~~ ···~~~~ ····~~~ ·· ··~~~ ·····~~~ ····~~ ~···~~~~ ···~~~ ··· · · ·· ~
【注:此语句会从左至右一直判断,直到有 非0 出现,返回 非0,
如果一直没有 非0 出现(即全为0),则返回0】
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
pass语句:即为 空白语句块,类似占位符号
示例: pass
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
字符串 str(charactor string)
作用:用来记录文本信息
表示方法:
'hello'
"hello"
"""hello"""
'''hello'''
三单引号和三双引号,所见即所得,输入什么就输出什么。换行会自动转换为换行符‘\n’。
(用print的时候才会正常显示)
注:主要解决引用语句内部引号重复问题
隐式字符串拼接。
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
用转译序列代表特殊的字符:
字符串字面值中,用字符反斜杠\
后跟一些字符代表特殊的一个字符:
例:
\' 代表一个单引号
\'\'\'代表三单引号
\" 代表一个双引号
\n 代表一个换行符
转义字符表:
\\ 反斜杠
\r 返回光标至首行
\f 换页
\t 水平制表符
\v 垂直制表符
\b 退格
\0 字符串,字符值为零
\xXX XX 为两位十六位进制的标识符。
\uXXXX UNICODE16 的十六进制表示的字符
\UXXXXXXXX UNICODE32 的十六进制表示方式
字符串的运算:
+ += * *=
示例:>>> "你好"+"中国"
'你好中国'
>>> a="你好"
>>> b="中国"
>>> c=a+b
>>> c
'你好中国'
>>> '中国'*3
'中国中国中国'
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
unicode编码:(全世界字符统一编码)
分类:UNICODE16(两个字节)
UNICODE32(四个字节)
格式:
r'字符串内容'
r"xx"
r'''xx'''
r"""xx"""
作用:让转译符号\无效
实例:# 转译之后的字符串
a='C:\newfile\test.py'
print(a)
# 未转译raw字符串
a= r'C:\newfile\test.py'
print(a)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
字符串的比较:
< <= > >= == !=
比较规则:字符串的比较是按ascii编码值进行依次比较
优先比较两个字符串第一个字符,如果不同直接得出ascii大小,如果相同,则比较第二个字符。
【每次只比较一个字符,不是比较和的大小!!!】
(见: man ascii)
示例:(即比较字符串ascii编码的大小,从左往右依次比较,田忌赛马规则)
'A' < 'B' # True
‘ABC’<'ACB' # True
'AD'>'ABC' # True
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
len(x)函数:
示例:
s= input(“请输入:”)
print("您输入",len(s),"个字符")
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
in/not in运算符
作用:用于序列,字典,集合等容器中,用于判断某个值是否存在与容器中
not in 与 in的运算符结果相反
格式:对象 in 序列
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
字符串的索引操作index:
Python字符串是不可改变的字符序列。
语法:字符串[整数表达式]
说明:
Python序列都可以用索引来访问序列中的对象
Python序列的正向索引是从0开始的,第二个索引为1,最后一个索引为len(x)-1
python的反向索引是从-1开始的,-1代表最后一个,-2代表倒数第二个,第一个是-len(s)
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
切片:slice
从字符串序列中去除相应的元素,中心组成一个字符串序列
语法:
字符串[开始index:结束index:步长s]
说明:
1.开始index是切片切下的位置,-1代表最后一个元素,结束index不包含
2.步长是切片每次获取当前元素后移动的长度和方向,正号是向右,符号为向左。
步长不写,默认为1,即依次排列,反之亦反。
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
字符串编码转换函数:
ord(c) 返回字符c对应的编码值
chr(c) 返回编码值c对应的字符
整数转换为字符串函数:
hex(i) 将整数转换为 十六进制 字符串
oct(i) 将整数转换为 八进制 字符串
bin(i) 将整数转换为 二进制 字符串
→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→→
经典比大小算法:
a = int(input(’enter your first number‘))
b = int(input(’enter your second number‘))
c = int(input(’enter your third number‘))
m = a
if m < b:
m = b
if m < c:
m = c
print(m)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~