python入门常用知识

news2024/9/24 11:24:02

文章目录

  • 前言
  • 一、定义
  • 二、Tips
    • 1.常用方法
    • 2. 常用module
      • statistics 统计分析常用模块
      • SciPy 算法及统计分析库
  • 总结


前言

本文用来记录在使用python时一些基础的定义、基础用法或Tips。

一、定义

多变量定义:

a, b, c = 0, 0, 0

数组定义:

# 变量定义
a = []
# 作为函数参数时
a: List[int] 

函数定义:

def function(a: int, b: List[int])
# 返回值 -> 跟返回变量类型
def function(self) -> bool

返回多个值,指定变量类型:

from typing import Tuple

def function(self) -> Tuple[bool, int]

类定义继承:

class Base:
	def __init__(self, name: str):
	self.print(f"class name: {name}")
	# 或如下打印形式
	# self.print("class name: {}".format(name))
class A_Base(Base):
	def __init__(self):
		# 调用父类构造
		super().__init__("Base")
		# 打印子类输出
		self.print(f"class name: A_Base")

二、Tips

1.常用方法

自加减乘除:

a = 10
# a = a + 10
a += 10
# a = a - 10
a -= 10
# a = a * 10
a *= 10
# a = a / 10
a /= 10

求解N次方:

# b = a * a
# **n是求解n次方
a = 10
b = a**2
# b = 100

开方:

from math import sqrt

a = sqrt(100)
# a = 10

取整:

>>> round(345.345)
345
>>> round(345.345,2)
345.35
>>> round(345.345,1)
345.3
>>> round(345.345,0)
345.0
>>> round(345.345,-1)
350.0
>>> round(345.345,-2)
300.0

求平均、最大、最小

# average
from statistics import mean
a = [3, 4, 5, 1, 6, 2, 9, 7, 10, 8]
b = mean(a)
# b = 5.5

# min
b = min(a)
# b = 1

# max
b = max(a)
# b = 10

2. 常用module

statistics 统计分析常用模块

  • Mean 平均数
  • Median 中位数
    • Median Low 双数时中间两位中较小的一个,单数取中间
    • Median High 双数时中间两位中较小的一个,单数取中间
  • Mode 众数
import statistics
>>> statistics.mean([3, 4, 5, 1, 6, 2, 9, 7, 10, 8])
5.5
>>> statistics.median_low([1, 4, 7])
4
>>> statistics.median_low([1, 4, 7, 10])
4
>>> statistics.median_high([1, 4, 7, 10])
7
>>> statistics.mode([3, 4, 5, 1, 6, 2, 2, 9, 7, 10, 8])
2

SciPy 算法及统计分析库

SciPy 是基于Python的NumPy扩展构建的数学算法和便利函数的库1

  • scipy.optimize.leastsq 求解最小二乘方程
from scipy.optimize import leastsq
import numpy as np
import matplotlib.pyplot as plt

def fun(p,x):
    k,b = p
    return k*x+b

def error(p,x,y):
    return fun(p,x)-y

Xi = np.array([1,2,3,4,5])
Yi = np.array([2,4,5,6,8])

p0 = np.array([1,3])
para = leastsq(error,p0,args=(Xi,Yi))

k,b = para[0]
print(f"k = {k}, b = {b}")
plt.scatter(Xi, Yi, color='red', label='Sample data', linewidth=2)

x = np.linspace(0, 10, 5)
y = k * x + b
plt.plot(x, y, color='blue', label='Fitting Curve', linewidth=2)
plt.legend()  # 图例

plt.show() # 显示
# k = 1.4000000000008725, b = 0.799999999995201

在这里插入图片描述


总结


  1. User Guide官方函数说明样例 ↩︎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/171119.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CANN 2022 | 开放升级,跃升新台阶

每一位开发者,都是改变世界的力量每一位开发者,都在创造一往无前的AI时代每一位开发者,都在2022砥砺前行,期待在2023再露锋芒逆光而行,只为拂晓回忆2022,哪些年度关键事件让你记忆犹新?是披星戴…

聊聊红黑树,B/B+树和键树

RB树 RB树和AVL树类似,是一种自平衡式的平衡二叉搜索树,AVL不是保证平衡因子不能超过1,红黑的话没有这个要求,他的结点非黑即红,可以达到Logn的查找,插入,删除 RB树的五条性质: 1…

【markdown】语法 添加`emoji`表情

💻 【markdown】语法添加emoji表情🏠专栏:其他 👀个人主页:繁星学编程🍁 🧑个人简介:一个不断提高自我的平凡人🚀 🔊分享方向:目前主攻前端&#…

与资源限制有关的题目

文章目录0、资源限制技巧汇总1、题目一:40亿个数,内存限制为1G,如何找到出现次数最多的数2、题目二:40亿个数,内存限制为10MB,找到所有未出现过的数进阶问题1:40亿个数,内存限制为3K…

【计算机体系结构-02】机器模型

1. 机器模型 (Machine Model) 计算机的基本工作就是进行运算,那么计算就需要有用来处理计算方法的处理单元和提供或保存数值的存储单元。一般将用来处理计算方法的处理单元称为 算术逻辑单元 (ALU--Arithmetic Logic Unit)。在一个计算过程中可能会是这样的一个流程…

springboot整合flowable

自动部署 流程图提前画好,放入 指定文件夹 配置: spring.datasource.usernameroot spring.datasource.passwordroot # nullCatalogMeansCurrenttrue 自动生成表 spring.datasource.urljdbc:mysql:///flowable_process?serverTimezoneUTC&nullCat…

CISP_VULHUB_HACK ME PLEASE

vulhub_HACK ME PLEASE简介扫描开放端口探测web服务搜集seedms的信息登录mysql,尝试获得seeddms的密码利用RCE漏洞提权简介 靶机链接:https://www.vulnhub.com/entry/hack-me-please-1,731/难度:简单描述:一个完全为OSCP设计的简…

数据结构之经典八大排序的实现(万字详谈)

文章目录前言1.插入排序2.希尔排序3.选择排序4.堆排序5.冒泡排序6.快速排序hoare方式版本快排实现非递归方式实现快排挖坑法实现快排前后指针法(双指针法)快排的各种优化1.减少后几层的递归调用(小区间优化)2.三数取中优化3.三路划分(处理大量重复数据&a…

信息论复习—信息的度量

目录 离散信源信息的度量: 离散信源的信息量: 单符号离散无记忆信源: 离散无记忆信源及熵: 自信息: 信息量的定义: 信息熵的定义: 熵的性质: 离散信源的最大熵定理&#xf…

Elasticsearch高级查询—— 关键字精确查询文档

目录一、初始化文档数据二、字段匹配查询文档2.1、概述2.2、示例一、初始化文档数据 在 Postman 中,向 ES 服务器发 POST 请求 :http://localhost:9200/user/_doc/1,请求体内容为: {"name":"张三","age&…

LINUX学习之了解系统目录结构(一)

前言 Linux 系统目录结构是一个由各种目录和文件组成的树形结构,每个目录都有特定的用途。在这篇文章中,我们将讨论 Linux 系统中最常见的目录,并解释它们的用途 登录系统后输入ls命令查看系统目录 树状目录结构图 系统常用目录 目录名描述…

单目相机标定实现--张正友标定法

文章目录一:相机坐标系,像素平面坐标系,世界坐标系,归一化坐标系介绍1:概述公式二:实现1:整体流程4:求出每张图像的单应性矩阵并用LMA优化5:求解理想无畸变情况下的摄像机的内参数和…

SpringBoot项目集成liquibase,数据库版本控制解决方案

liquibase 数据库版本留痕解决方案,在实际生产过程中如何高效管理数据库的DDL与DML语句,对这些语句留痕处理。如果能将sql的执行与SpringBoot项目启动结合在一起,每次启动项目自动执行新增的sql语句,这样就可以使得项目组成员各个…

在 VMware Workstation 16 Pro 中安装 Ubuntu Server 22.04.1 并配置静态 IP 地址

文章目录1.下载 Ubuntu Server 22.04.12.新建虚拟机向导3.编辑虚拟机设置4.开启此虚拟机并配置Ubuntu系统5.设置 root 用户的密码6.允许远程连接 root 用户7.配置静态 IP 地址7.1 查看 Windows 的网络信息7.2 查看 Ubuntu 的网络信息7.3 修改配置文件7.4 测试 Windows 能否互相…

springcloud--xxl-job

xxl-job 虽然java自带定时器,但是在springcloud内,如果对多个模块进行统一任务调度,这是自带的定时器就显得不够用,这时就可以使用xxl-job。 xxl-job是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速、学习…

智能门锁-手机应用相机国产、非国产统计参数对比分析

智能门锁-手机应用相机国产、非国产统计参数对比分析 智能门锁应用 从2019年1月1日至2020年12月31日,3D人脸识别智能门锁在全市场统计中,总销量已接近20万套。其中德施曼以其先发优势,良好的市场定位和大力度的推广,成为市场发展…

C语言萌新如何使用printf函数?

🐎作者的话 如果你搜索输入输出函数,那么你会看到输入输出流、Turbo标准库、标准输出端、stdout什么什么乱七八糟的,作为一个萌新,哪懂这些? 本文介绍萌新在前期的学习中,常用的输入输出函数及其功能~ 跳跃…

【Python标准库】LZ77编码的基本原理和lzma模块

文章目录lz77编码lzma模块调用lz77编码 Python标准库总共提供了三种压缩算法,分别是zlib, bz2以及lzma,并且位这三个模块提供了高度相似的API,考虑到zlib中已经对很多定义做了详尽的解读,本文主要介绍一下lzma算法,然…

vue使用rem, vscode使用px to rem工具

一、使用px2rem-loader实现pxtorem 1、安装 首先,我们使用 vue 的脚手架 vue-cli 初始化一个 webpack 项目(前提是已经安装过 vue-cli,具体不再阐述),一些选项根据自己项目需要选择。 vue init webpack my-app命令执…

深度学习算法数据-网络-算法总结

深度学习算法数据-网络-算法总结 1 数据集大全 通用2D检测数据集、交通标志、车道线、行人检测、3D目标检测、ReID等数据集 2 Backbone知识汇总 该部分主要是针对常见CNN结构以及ViT结构进行汇总,同时也包含轻量化CNN Backbone以及轻量化Transformer模型等高性…