python学习笔记

本文介绍了Python的基础知识,包括字符串常用操作、列表和字典的方法,如循环、条件判断,以及字符串格式化。同时,讲解了JupyterNotebook的使用和Numpy库的导入,涉及数据类型、异常处理和文件操作等内容。
摘要由CSDN通过智能技术生成

基础知识

  1. 入x=input(“提示的信息”) / 输出print(“输出的信息”)
  2. 采用代码缩进和冒号 : 来区分代码块直接的层次
    冒号和下一行的缩进,表示下一个代码块的开始,而缩进的结束则表示此代码块的结束
    例子:
    a=1
    if a==1:
    print(“正确”) # 缩进4个空白占位
    else: # 与if对齐
    print(“错误”) # 缩进4个空白占位
    补充:要求属于同一作用域中的各行代码,它们的缩进量必须一致
  3. 运算符
    ** 幂运算符
    // 进行除法运算后向下取整
    成员运算符:in、not in
    身份运算符:is、is not
    id()函数:获取变量地址
  4. 数据类型:Number(int\float\complex复数)、String、List、Tuple元组、Set、Dictionary
    Set集合:使用大括号 {} 或者 set() 函数创建,无序,不可重复,元素可变
    注意:创建空集合必须使用set()函数
    添加元素:add();添加更多的元素update();移出元素remove()
  5. 一行末尾+ “\”:换行
  6. type()函数:获取任何对象的数据类型
  7. 生成随机数:
    import random #导入random模块
    print(random.randrange(1,11)) #随机生成一个1到10之间的随机数
  8. pass 语句不做任何事情,一般用做站位语句,是为了保持程序结构的完整性
  9. 命名风格:函数名:FristFunctionName();变量名:first_value_name

字符串

常用操作

在这里插入图片描述

常用方法

在这里插入图片描述
在这里插入图片描述

列表

常用方法

len、append、remove、max\min\sort
count、index、insert、reverse、clear、copy、pop

在这里插入图片描述

使用 for 循环对列表进行遍历

在这里插入图片描述

字典

基本格式

dict={ “key0”:”value0”,
		“key1”:”value1”
					…}

元组

元组的创建方式和列表一样,只不过用的是 (),列表用的是 [],元组中的元素是不可改变的。元组可用作字典的键,也可以作为集合的元素,而列表则永远都不能当做字典键使用
e.g.
在这里插入图片描述

常用方法

  • dict.keys():所有键 / dict.values():所有值 / dict.itms:所有键值对
  • 添加\更新key对应的值:dict [key]=”value”
  • key值是否存在:bool=”key” in dict
  • 删除键值对:del dict[“key”]
  • 键值对数:len(dict)

循环

for循环

基本格式
在这里插入图片描述在这里插入图片描述

i从5到9
elif = else if

while循环

基本格式
在这里插入图片描述

字符串格式化

打印动态信息,使用format对字符串进行格式化

在这里插入图片描述
0/1:第1/2个参数
在这里插入图片描述
保留两位小数
保留两位小数

函数

格式

def function(a,b):
  # 定义函数的代码
  # 定义函数的代码
  return a+b

调用

function(a,b)

python模块

引入:(第三种不推荐)
在这里插入图片描述
部分模块介绍:

  • glob:提供了一个函数用于从目录通配符搜索中生成文件列表
  • os:提供了许多与操作系统交互的函数,例如创建、移动和删除文件和目录,以及访问环境变量等
  • shutil:高级的文件,文件夹,压缩包处理模块
  • setuptools:Python distutils增强版的集合,帮助更简单的创建和分发Python包
  • typing:提供静态类型检查
  • time 模块:time 模块提供了处理时间的函数,例如获取当前时间、格式化日期和时间、计时等。

其他补充:

  • torch:包含了多维张量的数据结构以及基于其上的多种数学操作。另外,它也提供了多种工具,其中一些可以更有效地对张量和任意类型进行序列化。具体包括pytorch张量的生成,以及运算、切片、连接等操作,还包括神经网络中经常使用的激活函数,比如sigmoid、relu、tanh,还提供了与numpy的交互操作
  • opencv:图像视频数据处理的库
  • yolo:目标检测的算法
  • pytorch:实现yolo的框架

定义属性与方法

class student:
  def __init__(self,name,id):
    self.name=name
    self.id=id
    self.grade={"chinese":0,"math":0,"english":0 }

  def setGrade(self,course,grade):
    if course in self.grade:
      self.grade[course]=grade

  def printGrade(self):
    print(f"studentName:{self.name}(id:{self.id})的成绩为:")
    for course in self.grade:
      print(f"{course}:{self.grade[course]}")

chen=student("小陈","1191002005")
chen.printGrade()

继承

class Employee:
  def __init__(self,name,id):
    self.name=name
    self.id=id
  def printInfo(self):
    print(f"员工姓名:{self.name},工号:{self.id}")

class FullTimeEmployee(Employee):
  def __init__(self,name,id,monthSalary):
    super.__init__(name,id)
    self.monthltSalary=monthSalary

文件

读文件
read方法
在这里插入图片描述

与for循环结合
在这里插入图片描述

关闭文件
在这里插入图片描述

写文件
w:写入模式;a:附加模式;r+:覆盖式读写;a+:添加式读写
在这里插入图片描述

异常处理

捕捉异常
在这里插入图片描述

测试

assert你认为true的语句
若语句为false会产生AssertionError报错
常用的python单元测试库:unittest

Jupyter Notebook相关

Jupyter notebook:编译器

  • 启动:cmd窗口输入jupyter notebook,浏览器中输入http://localhost:8888/tree(使用时cmd窗口不关闭)

  • 单元格状态切换:esc(蓝竖线,选中状态)/ enter(绿竖线,编辑状态)

  • 两个模式:markdown,code;切换:选中单元格状态下,M与Y

  • 单元的增:上方A下方B;删:双击D;复制C;剪切X;粘贴V;撤销Z

  • 参考文档:help() \ -? \ shift+tab

  • 运行:ctrl+enter(运行本单元,选中当前单元)
    shift+enter:运行本单元,选中下一个单元
    alt+enter:运行本单元,在下面插入一个单元

  • 运行外部python文件:%run XXX.py,相当于把整个文件的资源加载到jupyter nootbook中

  • 运行计时:
    %:单行代码;%%多行代码
    time:代码运行一次;timeit:代码运行多次取平均

  • 查看当前会话中所有变量与函数:
    %who:快速显示名称;%whos:详细信息;%who_ls:返回字符串列表

  • 执行Linux指令
    e c h o / echo/ echo/pwd/ l s / ls/ ls/mkdir
    Mac Linux:用!(Windows:用% )

  • 查看魔法指令:lsmagic

  • IPython输入输出历史
    “_”:表示上一个输出
    “_2”:表示Out[2]

  • 可视化工具:Matplotlib、seaborn、Excel、POWERBI、Tableau、SPSS

Numpy

导入:import numpy as np
创建array:np.array(),e.g. np.array([1,2,3])

OpenCV
导入:import cv2

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值