Python知识总结

1.输入输出

print()输出语句,括号内放入想要输出的内容,对于变量直接放入,字符串需加'',""等引号中,中间可以用,+连接(为同一数据类型)

name='jack'
print('My name is ',name)
print('My name is '+ name)

input输入语句,一般默认的是str类型,若想输入其他数据类型,可用其内置函数int(),double()等

a=int(input('Input a number'))

2.字符串

Number类型有int,float,bool,complex
String类型:字符串中有很多的常用操作

1.查询操作:index(),rindex(),find(),rfind(),不同的是,index()和rindex()查不到会报错,而find()和rfind()会返回-1
2.大小写转换操作:upper()全部转为大写,lower()全部转为小写,title()每个单词首字母大写,swapcase()大小写相互转换,capitalize()第一个字符大写,其余小写
3.内容对其操作:center()居中对齐,rjust()右对齐,ljust()左对齐,zfill()右对齐,左边用0填充
4.劈分操作:split()从左边开始劈分,rsplit()从右边开始劈分
5.判断操作:isindentifier(),isspace(),isalpha(),isdecimal(),isnumkeric(),isalnum()
6.比较操作:is比较的是地址,==比较的是内容
7.切片操作:[start:stop:step],step为负值时逆序输出
8.格式化:%占位符,{}占位符,f
name='jack'
age=19
print('我的名字是%s,今年%d岁'%(name,age))
print('我的名字是{0},今年{1}岁'.format(name,age))
print(f'我的名字是{name},今年{age}岁')

3.数据结构

列表使用[]中括号,用,隔开,列表中每一个值有对用的位置值,即为索引,正向从0开始,依次往后,负向从-1开始,依次向前
元组使用()小括号,用,隔开,元组有序但不可变,因此不同于列表,不能对其进行增添删改等操作,不可变指的是元组所指向的内存中的内容不可变,但如果元组中某元素包含一个列表,由于列表是可变的,因此可改变列表中的内容,但对于元组来说,还是一个列表,内容并未改变.元组中只有1个元素时,要使用,
字典字典用{}大括号,典可变且无序,并且其可存放任意类型的对象,但是它的键必须是不可变的,例如字符串,数字,元组.一个键不能出现两次,若出=现多次,第一次的值会被最后一个值所覆盖.字典采用的是键值对的方式.key:value,中间用:分割,每个键值对中间用,分割
集合用{}大括号,用,隔开,集合无序且同字典不可有重复元素,若重复只输出第一次的

4.判断与循环

判断语句,if,if…elif…else,if…else
循环语句while(),for…in…,do…while

5.函数

什么是函数,函数就是执行特定以完成某功能的一段代码.
函数作用:复用代码,隐藏实现细节,提高可维护性,提高可读性便于调试

def 函数名():
----语句
----(return)

函数的调用 函数名([实参])

6.高阶函数

函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数!
高阶函数,变量可以指向函数,函数名也可以是变量

i=abs(-5)
print(i)
print(abs)#<built-in function abs>
f=abs
print(f)#<built-in function abs>
print(f(-5))

可以看到,我们将调用函数的结果,赋值给变量 i ,这样变量就可以打印出结果,如果将函数本身赋值给变量f ,那么变量也拥有这个函数的功能,这个变量将指向这个函数,使用变量 f ()来调用函数和直接调用abs()效果是一样的

abs=5
print(abs)#5
print(abs(-5))#TypeError: 'int' object is not callable

我们看到,abs这个变量被赋值5,然后使用abs(-5)调动函数,发现异常,此时abs变量指向的不是函数,而是一个int类型的 5 ,由此可以看出函数名其实就是变量

我们想到,函数可以传参数,而函数名可以做变量,那我们函数里面的参数,也可以传入函数名。将函数作为参数,传给另一个参数就是高阶函数

def fun1(i):
    return i*2

def fun2(x,y,fun1):
    return fun1(x)+fun1(y)

sum=fun2(2,3,fun1)
print(sum)

Python的匿名函数语法格式是:lambda [list] : 表达式
例如,我们要返回两个数相加的结果,可以定义一个函数

def sum_ab(a,b):
    return a+b

i=sum_ab(3,5)#函数调用
print(i)

sum_ab=lambda a,b:a+b
print(sum_ab)

使用 lambda 表达式可以省去定义函数的过程,让代码更加简洁,针对不需要多次复用的函数,使用 lambda 表达式可以在用完之后立即释放,提高程序执行的性能。而且还能配合其他的一些高阶函数配合使用
map
map函数的参数与返回值:map(func, *iterables) --> map object
map()函数:是将传入的func函数作用于,可迭代的数据里面每个元素,并将处理好的新的结果返回

def fun(x):
    return x**3
lst=[1,2,3,4,5]
print(list(map(fun,lst)))

print(list(map(str,lst)))#将int型数据转为str型

print(list(map(lambda x:x**3,lst)))

reduce
使用reduce时要先导入from functools import reduce
格式为:reduce(function, sequence[, initial]) -> value
reduce()函数,使用function函数(有两个参数)先对集合中的sequence第 1、2 个元素进行操作,如果存在initial参数,则将会以sequence中的第一个元素和initial作为参数,用作调用,得到的结果再与sequence中的下一个数据用 function 函数运算,最后得到一个结果。

from functools import reduce
list_a = [1, 2, 3, 4, 5]
def fun_b(x, y):
    return x + y
print(reduce(fun_b, list_a))`在这里插入代码片`

filter
Python内建的filter()函数用于过滤序列,和map()类似,filter()也接收一个函数和一个序列但是不同的是filter()把传入的函数依次作用于每个元素,然后根据返回值是True还是False决定元素的保留与丢弃
filter(function, iterable)

7.模块

模块英文名为Modules,一个模块中可以包含n多个函数,在Python中一个拓展名为.py的文件为一个模块
使用模块的好处:方便其他程序和脚本的导入并使用,避免函数名和变量名冲突,提高代码的可维护性,提高代码的可重用性
导入模块 import 模块名称 [as别名]
from 模块名称 import 函数/变量/类
在每个模块的定义中都包括一个记录模块的变量__name__,程序可以检查该变量,以确定他们在哪个模块中执行.如果一个模块不是被导入到其他程序中执行,那么它可能在解释器的顶级模块中执行.顶级模块的__name__变量的值为__main__即以主函数的形式执行
if __name__ = '__main__':
内置模块:

sys:与Python解释器及其环境操作相关的标准库
time:提供与时间相关的各种函数的标准库
os:提供了访问操作系统服务的功能的标准库
calendar:提供与日期相关的各种函数的标准库
urllib:用于读取来自网上的标准库
json:用于使用json序列化和反序列化对象
re:用于在字符串中执行正则表达式匹配和替换
math:提供标准算术运算函数的标准库
decimal:用于进行控制运算精度,有效位数和四舍五入的十进制运算

第三方模块的安装pip install 模块名
第三方模块的使用import 模块名

9.异常处理机制

Python提供了异常处理机制,可以在异常出线时及时捕获,然后内部消化让程序继续执行
try-except try-except-else try-except-else-finally结构
常见异常类型:

ZeroDivisionError:除零
IndexError:没有此索引
KeyError:没有键
NameError:未初始化对象
SyntaxError:语法错误
ValueError:传入无效参数

10.IO编程

r:以只读模式打开
w:以只写模式打开
a:以追加模式打开
b:以二进制模式打开
+以续写方式打开,不能单独使用
在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值