首页 > 编程语言 >深入学习Python (一)

深入学习Python (一)

时间:2024-04-09 13:31:25浏览次数:26  
标签:下标 函数 Python 元素 列表 学习 深入 字符串 元组

一、字面量

在代码中,被写下来的固定的值,称之为字面量。

二、字符串格式化

语法

  • “%占位符%” %变量
  • f"内容{变量}"

精度的控制

我们可以使用辅助符号"m.n"来控制数据的宽度和精度
m,控制宽度,要求是数字(很少使用),设置的宽度小于数字自身,不生效
.n,控制小数点精度,要求是数字,会进行小数的四舍五入

三、表达式格式化

  • f"{表达式}"
  • “%s%d%f" %(表达式,表达式,表达式)

四 、函数的说明文档

我们可以给函数添加说明文档,辅助理解函数的作用,
语法如下:

def func(x,y):
	'''
	函数说明
	:param x: 形参x的说明
	:param y: 形参y的说明
	:return : 返回值的说明
	'''
	函数体
	return 返回值

通过多行注释的形式,对函数进行说明解释。

五、容器

列表 [ ]

列表的常见方法
方法说明
列表.append(元素)向列表中追加一个元素
列表.extend(容器)将数据容器的内容依次取出,追加到列表尾部
列表.insert(下标,元素)在指定下标处,插入指定的元素
del列表[下标]删除列表指定下标元素
列表.pop(下标)删除列表指定下标元素,可以用一个变量接收这个元素
列表.remove(元素)从前向后,删除此元素第一个匹配项
列表.clear()清空列表
列表.count(元素)统计此元素在列表中出现的次数
列表.index(元素)查找指定元素在列表的下标找不到报错ValueError
len(列表)统计容器内有多少元素
列表有哪些特点
  • 可以容纳多个数据(上限为 2 63 2^{63} 263-1、9223372036854775807个)
  • 可以容纳不同类型的数据(混装)
  • 数据是有序存储的(有下标序号)
  • 允许重复数据存在
  • 可以修改(增加或删除元素等)

元组 ( )

定义方式

(元素,元素,元素,…)

操作方法
方法说明
index()查找某个数据,如果数据存在返回对应下标,否则报错
count()统计某个元素在元组中出现的次数
len(元组)统计元组元素个数
注意事项

不可修改内容

字符串常用操作 " "

方法说明
字符串[下标]根据下标索引取出特定位置字符
字符串.index(字符串)查找给定字符的第一个匹配项的下标
字符串.replace(字符串1,字符串2)将字符串内的全部字符串1,
替换为字符串2不会修改原字符串,
而是得到一个新的按照给定字符串
字符串.split(字符串)对字符串进行分隔不会修改原字符出,而是得到一个新的列表
字符串.strip()
字符串.strip(字符串)
移除首尾的空格和换行符或指定字符串
字符串.count(字符串)统计字符串内某字符串的出现次数
len(字符串)统计字符串的字符个数

序列的切片操作

序列是指内容连续、有序,可以使用下表索引的一类数据容器。列表、元组、字符串都可以视为序列
切片:从一个序列中,取出一个子序列
语法:序列[起始下标:结束下标:步长]
表示从序列中,从指定位置开始,依次取出元素,到指定位置结束,得到一个新序列:

  • 起始下标表示从何处开始,可以留空,留空视作从头开始
  • 结束下标(不含)表示何处结束,可以留空,留空视作截取到结尾
  • 步长表示,依次取元素的间隔
    • 步长1表示,一个个取元素
    • 步长2表示,每次跳过1个元素取
    • 步长N表示,每次跳过N-1个元素取
    • 步长为负数表示,反向取(注意,起始下标和结束下标也要反向标记)

集合的特点 { }

  • 可以容纳多个数据
  • 可以容纳不同类型的数据
  • 数据是无序存储的
  • 不允许重复数据存在
  • 可以修改
  • 支持for循环

容器的比较

在这里插入图片描述

六、不定长参数

位置传递

def fun(*args)
传进的参数都会被args收集,他会根据参数位置合并为一个元组,args是元组类型,这就是位置传递

关键字传递

def fun(**kwargs)
参数是“key=value”形式的情况下,所有的“key=value”都会被kwargs接受,同时组成字典。

七、函数

函数做参数传递

  • 函数本身可以作为参数,传入另一个函数中进行使用。
  • 将函数传入的作用:传入计算逻辑 ,而非传入数据

匿名函数

lambda匿名函数语法:
lambda 传入参数:函数体(一行代码)
匿名函数用来临时构建函数,只用一次的场景,且只能写一行函数体代码

八、文件

文件操作函数

操作功能
文件对象 = open(file,mode,encoding)打开文件获取文件对象
文件对象.read(num)读取指定长度字节,不指定num读取文件全部
文件对象.readline()读取一行
文件对象.readlines()读取全部行,得到列表
for line in 文件对象for 循环执行文件,一次循环得到一行数据
文件对象.close()关闭文件对象
with open()as f通过with语法打开文件,可以自动关闭

九、异常

在可能发生异常的地方进行捕获。当异常出现的时候,提供解决方式,而不是任由其导致程序无法运行。

格式:
	try:
		可能发生异常的语句
	except [异常   as   别名:]
		出现异常的准备手段
	[else:]
		未出现异常时应该做的事情
	[finally:]
		不管出不出现异常都会做的事情

异常具有传递性

十、包、模块

if _ name _ == ‘_ main _’
当运行的模块是自己模块时,才会执行相应的函数
其他模块导入则不会执行

_ all _ = [“test_a”]
from module1 import *
import * 只能导入test_a

标签:下标,函数,Python,元素,列表,学习,深入,字符串,元组
From: https://blog.csdn.net/qq_52429717/article/details/136482457

相关文章

  • 【附源码】JAVA计算机毕业设计校内互助学习(源码+mysql+文档)
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义标题:设计校内互助学习app3sy9t在当今教育领域,随着信息技术的迅速发展和智能手机的普及,数字化学习工具已成为辅助教学的重要手段。然而,现有的学习应用多数集中于......
  • java计算机毕业设计基于微信小程序与python的智能办公【附源码+远程部署+程序+mysql】
    本系统(程序+源码)带文档lw万字以上  文末可领取本课题的JAVA源码参考系统程序文件列表系统的选题背景和意义选题背景:随着移动互联网技术的飞速发展,传统的办公模式正逐渐向智能化、移动化转型。微信小程序作为一种新型的应用形式,因其无需下载安装、即用即走的便捷性,已经成......
  • [转载] 推荐给Java新手的学习指南
    以下肯定是不完整的列表,欢迎补充】【好像还缺什么:缓存技术。欢迎补充】Java是一个通用的编程语言,其实可以干很多事,怎么学Java就看怎么用了。但有一些一般的步骤:1.熟悉一种文本编辑器,比如Vim,Emacs,VSCode,GEdit,Kate,TextMate等(Notepad++的作者支持台**独,就不推荐了)。知道哪......
  • 深度探索:机器学习Deep Belief Networks(DBN)算法原理及其应用
    目录1.引言与背景2.定理3.算法原理4.算法实现5.优缺点分析优点:缺点:6.案例应用7.对比与其他算法8.结论与展望1.引言与背景深度学习在近年来取得了显著进展,其在图像识别、语音识别、自然语言处理等多个领域的成功应用引发了广泛的关注。其中,DeepBeliefNetworks......
  • 深度探索:机器学习神经图灵机(Neural Turing Machines, NTMs)原理及其应用
    目录1.引言与背景2.定理3.算法原理4.算法实现5.优缺点分析优点:缺点:6.案例应用7.对比与其他算法8.结论与展望1.引言与背景在人工智能与机器学习的前沿研究中,如何赋予计算机系统更强大的学习与推理能力,使其能模拟人类大脑的复杂认知过程,一直是科学家们不懈探索的......
  • Python中的异常处理 异常是什么? 异常处理的语法 基本的异常处理示例 捕获多个异常 fin
    Python中的异常处理异常是什么?异常处理的语法基本的异常处理示例捕获多个异常finally语句自定义异常异常处理的最佳实践——《跟老吕学Python编程》附录资料Python中的异常处理异常是什么?异常处理的语法基本的异常处理示例Python捕获多个异常finally语句Py......
  • 深度探索:机器学习堆叠泛化(Stacked Generalization, Blending)算法原理及其应用
    目录1.引言与背景2.集成学习定理3.算法原理4.算法实现5.优缺点分析优点:缺点:6.案例应用7.对比与其他算法8.结论与展望1.引言与背景机器学习领域中,模型性能的提升往往依赖于对数据特征的深入理解、恰当的模型选择以及有效的超参数调整。然而,在面对复杂且高度非线性......
  • 深度探索:机器学习多维尺度(MDS)算法原理及其应用
    目录1.引言与背景2.MDS定理3.算法原理4.算法实现5.优缺点分析优点:缺点:6.案例应用7.对比与其他算法8.结论与展望1.引言与背景多维尺度分析(Multi-DimensionalScaling,MDS)是一种统计学方法,用于将复杂、高维的相似性或距离数据转化为直观的、低维的可视化表示。MD......
  • UE中UPROPERTY的用法(UEC++个人学习笔记)
    UPROPERTY设置可视//仅在类默认设置可见(即里面面板) UPROPERTY(VisibleDefaultsOnly) int32VisibleDefaultsOnlyInt; //仅在实例化细节面板可见(即外面面板) UPROPERTY(VisibleInstanceOnly) FStringVisibleInstancestring; //类默认设置和实例化细节面板都可见......
  • python对于excel的操作
    python可以通过开源框架openpyxl来对excel进行读写操作。基本概念:对于excel,其中的主要用到的元素如下:WorkBook:工作簿WorkSheet:sheet表Cell:单元格style:样式Border:框线Font:字体Alignment:对齐...helloworld的demo:fromopenpyxlimportWorkbook#一开始新建是存储在内......