每天进步一点点~
第一节:基本语法
(1)print()函数
1)多个字符串输出,str()将其他字符型转为字符串,用拼接符号+连接。
2)字符串通常可以用无引号、单引号、双引号、三引号,这三种方式来表示。
如:
print('123')
print("Let's go!")
print('''123
456''')
双引号通常在输出的字符串有单引号时候用,三引号可作为换行符用。其次,三引号也可以在字符串中需要同时出现单引号、双引号当作字符串的情况使用。
(2)转义字符:
转义字符 | 意义 | ASCII码值(十进制) |
\a | 响铃(BEL) | 007 |
\b | 退格(BS) ,将当前位置移到前一列 | 008 |
\f | 换页(FF),将当前位置移到下页开头 | 012 |
\n | 换行(LF) ,将当前位置移到下一行开头 | 010 |
\r | 回车(CR) ,将当前位置移到本行开头 | 013 |
\t | 水平制表(HT) (跳到下一个TAB位置) | 009 |
\v | 垂直制表(VT) | 011 |
\\ | 代表一个反斜线字符''\' | 092 |
\' | 代表一个单引号(撇号)字符 | 039 |
\" | 代表一个双引号字符 | 034 |
\? | 代表一个问号 | 063 |
\0 | 空字符(NUL) | 000 |
\ddd | 1到3位八进制数所代表的任意字符 | 三位八进制 |
\xhh | 十六进制所代表的任意字符 | 十六进制 |
注意:
1. 区分,斜杠:"/" 与 反斜杠:"\" ,此处不可互换
2. \xhh 十六进制转义不限制字符个数 '\x000000000000F' == '\xF'
(3)变量赋值:
命名规范:
只能是一个词;
只能包含字母、数字和下划线;
不能以数字开头;
尽量描述包含的数据内容;
不要使用Python函数名或关键字。
(4)常见错误:
SyntaxError: unexpected EOF whileparsing
#语法错误,多了无法解析的符号,检查一下是否多了或者少了括号
SyntaxError: invalid character inidentifier
#语法错误有无效标识符,检查一下中文符号
IndexError: list index out of range
#索引错误,超出索引范围,检查一下列表是否为空
TypeError: must be str, not int
#数据类型错误,该数据不是正确的数据类型,比如字符串和数字直接拼接,检查一下数据类型
IndentationError: expected an indented block
#缩进错误,检查一下代码的缩进是否正确
KeyError: 'fond'
#键错误,字典中没有该的key对应的值,检查一下键名或者字典数据是否正确
ValueError: substring not found
#值错误,输入的数据类型跟要求的不符合
NameError: name 'a' is not defined
#未初始化对象,变量没有被定义
AttributeError: 'tuple' object has noattribute 'remove'
#属性错误,该对象没有这个属性、方法,检查一下数据类型
SystemExit
#解释器请求退出,出现在exit()函数后
IOError
#输入/输出操作失败
ImportError
#导入模块/对象失败,检查一下模块是否能够正常使用
UnicodeDecodeError/UnicodeEncodeError/UnicodeTranslateError
#Unicode 解码/编码/转换/时的错误
(5)算术运算符(从左到右,括号里优先,乘除排在加减前)
除了常见的,还有
% 取模,返回除法的余数
// 取整除,返回商的整数部分
x**y 求幂,返回x的y次幂
二元操作符:增强赋值操操符
运算结果是变宽的,如整数与浮点运算结果为浮点
abs()取绝对值
divmod(x,y)商余,同时输出商和余数,divmod(10,3)---(3,1)
pow(x,y[,z])幂余,[..]表示该函数可省略,pow(3,pow(3,99),10000)结果为4587
round(x[,d])四舍五入,d是保留小数位数,默认为0
max(s,y,x)取最大值
min(x,y,z)取最小值
complex(x)将x变为复数,增加虚数部分,complex(4)---4+0j
(6)函数转换
1)Int()
对于int()函数的使用,大家要注意一点:只有符合整数规范的字符串类数据,
才能被int()强制转换。最后,小数形式的字符串,由于Python的语法规则,
也不能使用int()函数强制转换。
int()函数的本质是将数据转换为整数。所以对于浮点数,int()函数会做取整处理。但是,同我们平时对小数四舍五入的处理方法不同,int()函数会直接抹零,直接输出整数部分。print(int(3.8))=3
(7)条件判断
if....elif....else
(8)input函数
返回类型,必为字符串。
(9)python保留字
and | as | assert | break | class | continue |
def | del | elif | else | except | finally |
for | from | False | global | if | import |
in | is | lambda | nonlocal | not | None |
or | pass | raise | return | try | True |
while | with | yield |
保留字说明
and 用于表达式运算,逻辑与操作as用于类型转换assert断言,用于判断变量或条件表达式的值是否为真break中断循环语句的执行class用于定义类continue继续执行下一次循环def用于定义函数或方法del删除变量或者序列的值elif条件语句 与if else 结合使用else条件语句 条件语句,与if,elif结合使用。也可以用于异常和循环使用exceptexcept 包括捕获异常后的操作代码,与try,finally结合使用exec用于执行python语句for循环语句finally用于异常语句,出现异常后,始终要执行finally包含的代码块。与try,except结合使用from用于导入模块,与import结合使用global定义全局变量if条件语句,与else,elif结合使用import用于导入模块,与from 结合使用in判断变量是否存在序列中is判断变量是否为某个类的实例lambda定义匿名函数not用于表达式运算,逻辑非操作or用于表达式运算,逻辑或操作pass空的类,函数,方法的占位符print打印语句raise异常抛出操作return用于从函数返回计算结果try包含可能会出现异常的语句,与except,finally结合使用while循环语句with简化Python的语句yield用于从函数依次返回值
(10)数据类型
1)整数:
可以用pow()求指数
形式:
十进制
二进制:以0b、0B开头
八进制:以0o、0O开头
十六进制:0x、0X开头
2)浮点类型(小数)
取值范围-10*308~10*309,精度量级10*(-16)次方。(需注意二进制和十进制不是严格对等的,其实是无限的一个二级制数。)
round(x,d):对x四舍五入,d是小数截取位数。常用于浮点数间的运算和比较。
使用字母e或者E作为幂的符号,以10为底。如e---a*10的b次。
(11)字符串类型
1)字符串切片
[m:n],m缺失表示取到开头,n缺失表示取到结尾。
[m:n:k],从m取到n,间隔为k
2)转义符
转义字符 | 意义 | ASCII码值(十进制) |
\a | 响铃(BEL) | 007 |
\b | 退格(BS) ,将当前位置移到前一列 | 008 |
\f | 换页(FF),将当前位置移到下页开头 | 012 |
\n | 换行(LF) ,将当前位置移到下一行开头 | 010 |
\r | 回车(CR) ,将当前位置移到本行开头 | 013 |
\t | 水平制表(HT) (跳到下一个TAB位置) | 009 |
\v | 垂直制表(VT) | 011 |
\\ | 代表一个反斜线字符''\' | 092 |
\' | 代表一个单引号(撇号)字符 | 039 |
\" | 代表一个双引号字符 | 034 |
\? | 代表一个问号 | 063 |
\0 | 空字符(NUL) | 000 |
\ddd | 1到3位八进制数所代表的任意字符 | 三位八进制 |
\xhh | 十六进制所代表的任意字符 | 十六进制 |
3)字符串操作符
x+y连接
n*x或x*n表示复制n次字符串x
x in s表示如果x是s的子串,返回true,否则返回false
len()返回字符串长度
str()转为字符串
hex()或oct(),转为16进制或者8进制
chr(x)x为unicode编码,返回其对应的字符
ord(x)x为字符,返回其对应的unicode编码
python字符采用unicode编码(0-1114111)0*10FFFF
str.lower()或str.upper()返回字符串的副本,全部字符小写/大写
str.split(sep=None)返回一个列表,由str根据sep被分割的部分组成
str.count(sub)返回字符串sub在str中出现的次数
str.replace(old,new)返回字符串str副本,所有old子串被替换为new
str.center(width,[fillchar])字符串str根据宽度width居中,fillchar可选
str.strip(chars)从str中去掉在其左侧和右侧chars中列出的字符
str.join(iter)在iter的每个元素后加一个str
4)槽
5)format格式控制