python3基础知识梳理
2018-03-29 13:25
288 查看
Python3基础知识梳理1、第一个python程序的解释hello.py#! /usr/bin/python #python是一门解释语言可以使用./或source执行# coding:utf-8 #编码格式,python解释器自己匹配生效无所谓带-*-不带 print("hello python!!!\n") #python2不支持这种输出,其输出不带小括号 2、注释# 单行注释‘’’这是多行注释‘’’ 3、变量以及类型变量就是用来存储数据的变量的数据类型:Numbers(数字):int、long、float、complex(复数)布尔类型:True、FalseString(字符串)List(列表)Tuple(元组)Dictionary(字典)Python中定义变量不需要说明其类型,系统会自动识别,type(变量名称)方法可以查看其类型变量命名:最好使用驼峰法命名,不能使用关键字命名,最好不要用双下滑线命名(特别是开头) 4、输入输出输入:name = input(“请输入你的名字\n”) 提示语,换行(\n) python3格式name = raw_input(“请输入你的名字”) python2格式格式化输出:name = “小明”age = 8print(“姓名:%s,年龄%d\n”%(name,age)) python3格式print “姓名:%s,年龄%d\n”%(name,age) python2格式
5、运算符
复合运算符
6、数据类型转换
7、条件分支 if condition: 条件为真执行的操作 else: 条件为假执行的操作 if condition: action elif condition: action else: action python可以有效避免“悬挂else”(if else对应关系出错)条件表达式(三元操作符) small = x ifx<y else y 如果x<y ,small=x.否则small=y断言assert:当这个关键字后面的条件为假,程序自动崩溃并抛出异常 assert 3>4 可以利用他置入检查点8、 循环语句while 条件: 满足条件执行语句 for 临时变量 in 可迭代对象: actionelse: 不满足条件action break 跳出整个循环continue 结束本次循环进入下一次循环他们只能在循环中使用,作用于当前循环9、 字符串 列表 元组 字典字符串:我想应该都不陌生,以下是他的一些常用的方法count(sub) 统计字符串中出现sub的数量endswith(sub) 以sub结束,返回布尔值startswith(sub) 以sub开始,返回布尔值find(sub) 查询sub是否存在,如存在返回下标,否者返回-1join(sub) 以字符串做分割符,分割subreplace(old, new) 替换split(“sub”) 以sub分割字符串strip() 去除字符串左右两边的空格字符串切片的使用:>>> tes ="123456" >>>tes[0:4] 结果:’1234’列表:List = [1, ‘dafd’, 12.6,True ]列表的元素可以是不同类型的列表是一个可变、可迭代的对象 列表的访问方式:下标索引,for循环迭代输出,while循环输出列表的常见操作:添加(append, extend, insert):append() 在列表后面追加元素extend() 可以将集合中的元素逐一添加到列表中去insert(index, a) 在指定index前添加a元素 修改:List[index] = value 查找:in ,not in 返回布尔值 删除(del, pop, remove):del 根据下标进行删除pop 删除最后一个元素remove 根据元素的值进行删除 排序(sort, reverse):sort() 对自身进行排序,默认从小到大,参数reverse=True可改为倒序reverse() 将list进行逆置 元组:元组也可以存放不同的数据类型元组只一个不可变、可迭代的对象(python中不可修改元组的元素,元素不可删除,只能进行访问)元组的访问方式:下标索引,for循环迭代输出,while循环输出元组常见的操作:元组切片(其原本数据不变):>>> tt =(1,2,3,"dfsf",12.4)>>> tt[1:3](2, 3) 删除整个元组:del 元组名 查询:in, not in 返回布尔值 count(sub) 查找元组中sub元素的数量 字典:字典是按照键值对的方式存放数据的字典是一个可变、可迭代的对象字典常见的操作:修改与添加:变量名['键'] = 数据若字典中‘键’存在,则修改其值否则添加新的键值 删除(del, clear):del 即可以删除字典元素,又可以删除整个字典clear() 清空整个字典 len() 测试字典的长度,即键值对的个数keys() 返回一个包含字典所有key的列表values() 返回一个包含字典所有value的列表items() 返回一个包含字典所有(键:值)元组的列表 例:[(‘name’:’fcd’),(‘age’:20)]has_key(key) 判断字典中是否存在key,返回布尔值 10、函数全局变量和局部变量:Python同其他的语言一样存在全局变量和局部变量,但在python的函数中如果不改变全局变量的值,可以不必声明,直接引用即可。如果需要改变需要使用global先进行声明,再使用函数定义与调用:def 函数名(): action 函数名()同其他语言一样python的函数也有返回值、参数,不过python可以在函数内写说明文档查看函数说明文档help(函数名)与其他语言相比python比较有特点的参数:收集参数(*args), 自定义参数(**kwargs)Python中内嵌函数:内部函数调用外部函数变量需要nonlocal声明函数递归同其他语言一样匿名函数:使用lambda 返回值:表达式 (这种短小的匿名函数可以当作函数参数进行传参) 11、模块导入以random模块为例:import randoms = random.randint(1,10) #随机产生一个1~10的整数 from random import randint()s = randint(1,10)12、文件文件的打开与关闭: fp = open(“文件名称”,”打开方式”)文件打开方式
关闭文件:fp.close() 文件的读写:fp.write() 向文件中写数据fp.read() 从文件中读数据fp.readlines() 将文件中的数据一次性读取,把每一行当做一个元素存入列表 fp.tell() 获取文件当前的位置fp.seek(offset,from) 定位操作 offset:偏移量 from: 0 表示文件开头 1 表示当前位置 2 表示文件末尾 文件系统操作:模块:打包的文件系统
os模块:
常用方法:
os.getcwd():返回工作目录
os.chdir(path):改变工作目录
os.listdir(path=''):列出文件目录
os.mkdir(path):创建目录
os.makedirs(path):创建递归目录
os.remove(path):删除文件
os.removedirs(path):递归删除
os.rename(old,new):文件重命名
os.system(command):运行系统的shell命令
os.curdir:指代当前目录.等价于‘。’
os.pardir:指代上一级目录
os.sep:输出操作系统的路径分隔符
os.linesep:当前平台使用的行终止符
os.name:指出当前使用的操作系统 13、类和对象定义类class 类名: 方法列表类名开头最好大写 创建对象对象名 = 类名() 属性:Python中定义私有属性是变量名前加双下划线,如 __name否则是公有属性 魔法方法:__init__(self)方法:初始化函数,设置一些默认值。在创建对象后立即被调用__str__(self)方法:设置对象的返回值__del__(self)方法:当删除对象时,python解释器会自动调用 继承:单继承:class NameClass(BaseClass1)多继承:class NameClass(BaseClass1, BaseClass2,BaseClass3) 重写父类方法:所谓重写,就是子类方法与父类方法同名,子类中的方法将会覆盖父类中的方法 多态所谓多态就时定义与执行不一致 静态方法和类方法类方法:类对象所拥有的方法,需要用装饰器@clsaamethod来标记为类方法,对于类方法第一个参数必须是类对象,一般以cls作为第一个参数。它可以通过实例对象引用,也可通过类对象引用静态方法:需要通过@staticmethod类进行修饰,不必有参数。它可以通过实例对象引用,也可通过类对象引用 14、异常常见标准异常:AssertionErron/AttributeError/EOFError/IndexError/KeyError/NameError/OSError/OverflowError/SyntaxError/TypeError/ZeroDivisionError 捕获异常:try: 检测范围exceptException[as reason]: 出现异常后的处理代码 print('代码')exceptException[as reason]; 出现异常后的处理代码 print('daimai'+str(reason)) except(Error1,Error2): 处理异常的代码 try: 检测范围except Exception[as reason]: 处理异常的代码finally: 无论如何都会处理的代码 raise语句抛出异常raise Exception('指示代码')
格式符号 | 转换 |
%f | 浮点型 |
%s | 通过str() 字符串转换来格式化 |
%d | 有符号十进制整数 |
运算符 | 描述 | 实例 |
+ | 加 | 两个对象相加 a + b 输出结果 30 |
- | 减 | 得到负数或是一个数减去另一个数 a - b 输出结果 -10 |
* | 乘 | 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200 |
/ | 除 | x除以y b / a 输出结果 2 |
// | 取整除 | 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 |
% | 取余 | 返回除法的余数 b % a 输出结果 0 |
** | 幂 | 返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000 |
= | 赋值运算符 | 把=号右边的结果给左边的变量 num=1+2*3 结果num的值为7 |
运算符 | 描述 | 实例 |
+= | 加法赋值运算符 | 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 |
函数 | 说明 |
int(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 )< 4000 /strong> | 将序列 s 转换为一个列表 |
[b]chr(x ) | 将一个整数转换为一个字符 |
unichr(x ) | 将一个整数转换为Unicode字符 |
ord(x ) | 将一个字符转换为它的整数值 |
hex(x ) | 将一个整数转换为一个十六进制字符串 |
oct(x ) | 将一个整数转换为一个八进制字符串 |
访问模式 | 说明 |
r | 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 |
w | 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
a | 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
rb | 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。 |
wb | 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
ab | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
r+ | 打开一个文件用于读写。文件指针将会放在文件的开头。 |
w+ | 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
a+ | 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。 |
rb+ | 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。 |
wb+ | 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。 |
ab+ | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。 |
os模块:
常用方法:
os.getcwd():返回工作目录
os.chdir(path):改变工作目录
os.listdir(path=''):列出文件目录
os.mkdir(path):创建目录
os.makedirs(path):创建递归目录
os.remove(path):删除文件
os.removedirs(path):递归删除
os.rename(old,new):文件重命名
os.system(command):运行系统的shell命令
os.curdir:指代当前目录.等价于‘。’
os.pardir:指代上一级目录
os.sep:输出操作系统的路径分隔符
os.linesep:当前平台使用的行终止符
os.name:指出当前使用的操作系统 13、类和对象定义类class 类名: 方法列表类名开头最好大写 创建对象对象名 = 类名() 属性:Python中定义私有属性是变量名前加双下划线,如 __name否则是公有属性 魔法方法:__init__(self)方法:初始化函数,设置一些默认值。在创建对象后立即被调用__str__(self)方法:设置对象的返回值__del__(self)方法:当删除对象时,python解释器会自动调用 继承:单继承:class NameClass(BaseClass1)多继承:class NameClass(BaseClass1, BaseClass2,BaseClass3) 重写父类方法:所谓重写,就是子类方法与父类方法同名,子类中的方法将会覆盖父类中的方法 多态所谓多态就时定义与执行不一致 静态方法和类方法类方法:类对象所拥有的方法,需要用装饰器@clsaamethod来标记为类方法,对于类方法第一个参数必须是类对象,一般以cls作为第一个参数。它可以通过实例对象引用,也可通过类对象引用静态方法:需要通过@staticmethod类进行修饰,不必有参数。它可以通过实例对象引用,也可通过类对象引用 14、异常常见标准异常:AssertionErron/AttributeError/EOFError/IndexError/KeyError/NameError/OSError/OverflowError/SyntaxError/TypeError/ZeroDivisionError 捕获异常:try: 检测范围exceptException[as reason]: 出现异常后的处理代码 print('代码')exceptException[as reason]; 出现异常后的处理代码 print('daimai'+str(reason)) except(Error1,Error2): 处理异常的代码 try: 检测范围except Exception[as reason]: 处理异常的代码finally: 无论如何都会处理的代码 raise语句抛出异常raise Exception('指示代码')
相关文章推荐
- Python基础知识梳理 - 第01部分
- Python基础知识梳理 - 第02部分
- Python基础知识梳理 - 前导部分
- python基础知识复习--1列表
- Python基础知识——pop() 方法
- Python 基础知识学习
- 初学python的一些基础知识
- javascript基础知识梳理-对象转换为初始值
- Python 基础知识初识记录
- 【python学习笔记一】程序设计计算机基础知识
- 借助幕课网的资源重新梳理下PHP基础知识,用以备忘。
- python基础知识
- VII Python(3)基础知识(if、while、for、interator、generator、文件、pickle)
- python之_requests库学习_1(基础知识)
- python基础知识
- 第3章 python基础知识
- 01月19日【Python3 基础知识】
- 01.Python基础知识
- 关于TCP/IP基础知识的梳理
- Python基础知识集锦