python基础

一、python简介

1、Python是一门动态、解释型、强类型语言

动态:运行期间进行数据检查,不用提前声明变量

静态:编译时进行数据检查,需要提前声明变量

解释型:执行程序时,解释成机器语言给计算机执行

编译型:先将代码编译成二进制可执行文件,再执行

强类型:变量类型设置成功,如果不强制转化,一直是这种类型

弱类型:在执行过程中会根据需要自动转化类型

2、基本数据类型

数字:整型,浮点型,复数型,布尔类型

字符串:

len('abc')   字符串长度

print('abd'.find('f'))  查找字符,找不到会报错

print('abd'.index('f'))   查找字符,找不到返回-1

'abc'.count('a')  统计字符的数量

"".join(["a","b","c"])  列表转化成字符串

"a,b,c,d".split(",")    将多个字符串分割成列表

"hello,java".replace("java", "python")    将java 替换为 python

"Name: %s, Age: %d" % ("Lily", 12)    字符串格式化

"Name: {}, Age: {}".format("Lily", 12)

列表:可以改变,有序

s.append('s')  只能增加一个元素

s.extend(['a','b'])  可以增加多个元素

s.pop() 默认删除最后一个元素

s.remove('a')  删除固定元素

s.sort()  排序

s.reverse() 反转

字典:无序,可变,字典的key不能相同

d = {'a':'b'} 

d['a']   或  d.get('a')   获取键值

d.pop('a')  删除元素

d.clear()  清除所有元素

元组:不可改变,有序

集合:可变,无序,通常用作去重,性能比列表好,一次搜索

3、哈希元素

通过计算得到元素的存储地址(映射), 要求不同长度的元素都能计算出地址,相同元素每次计算出的地址都一样, 不同元素计算的地址必须唯一, 基于哈希的查找永远只需要一步操作, 计算一下得到元素相应的地址, 不需要向序列那样遍历, 所以性能较好

可哈希元素: 为了保证每次计算出的地址相同, 要求元素长度是固定的, 如数字/字符串/只包含数字,字符串的元组, 这些都是可哈希元素

4、例子:判断一个字符串是不是ip地址

5、文件操作

文件打开  f=open('t.text')  f.close() ////   f = with open('t.text') as f   

文件读取  read()  ///    readline()  

文件保存  f.save()

文件写入  f.write()

文件指针移动  f.seek()

二、python函数

1、必选与可选参数

可选参数必须放在后面,已有默认值定义

2、位置参数和关键字参数

位置参数:按照位置传参

关键字参数:直接指定参数值,不按顺序

3、可变参数

*args 定义多个元素,里面存储元组

**kwargs  存储多个元素,格式是字典

4、匿名函数lambda(主要为了定义简单函数)

add = lamda x,y: x+y

5、高阶函数

以函数为参数的函数称为高阶函数

常用高阶函数

map,使用一个函数面对序列进行批量操作

filter,使用一个函数来过滤数据

reduce,使用一个函数对序列累计操作;这个函数的2个参数操作完作为下一轮的入参

6、装饰器

以函数为参数的函数称为高阶函数,以@为引用

7、函数嵌套

函数内部定义函数

三、模块和包

1、模块

一个py文件为一个模块

一个文件夹为一个包(有__init__文件)

2、常用系统模块

os: 与操作系统交互

os.name/os.sep/os.linesep: 系统名称/系统路径分隔符/系统换行符

os.makedir()/os.makedirs(): 建立目录/建立多级目录

os.getenv("PATH"): 获取系统PATH环境变量的设置

os.curdir/os.prdir: 获取当前路径/上级路径

os.walk(): 遍历文件夹及子文件

os.path.basename()/os.path.abspath()/os.path.dirname(): 文件名/文件绝对路径/文件上级文件夹名

os.path.join()/os.path.split(): 按当前系统分隔符(os.sep)组装路径/分割路径

os.path.exists()/os.path.isfile()/os.path.isdir(): 判断文件(文件夹)是否存在/是否文件/是否文件夹

sys: 与Python系统交互

sys.path: 系统路径(搜索路径)

sys.platform: 系统平台,可以用来判断是python2还是3

sys.argv: py脚本接受的命令行参数

sys.stdin/sys.stdout/sys.stderr: 标准输入/输出/错误

例子:冒泡排序,快速排序,二分查找,迭代

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容