廖雪峰Python学习笔记[Part 1]

《廖雪峰python3教程》| 书评 + 学习笔记干货 如果你正在考虑自己适不适合读《廖雪峰python3教程》,不妨看看我的评价~ 我把知识盲点整理成了一份清单,你可以自测,然后参考我的学习笔记哦~ 阅读详情

#记录在廖雪峰网站上面学习的知识点,以便日后查阅#
部分是自己总结,部分内容直接从“https://www.liaoxuefeng.com/wiki/1016959663602400/1017261630425888”copy 过来

%python中可调用函数,简单举例如下:
abs()函数:每次只能输入一个参数,输入多个参数会抛TypeError异常
max()和min()函数,接收任意多个参数,返回最大值。同样,输入参数必须是实数类型,不能是字符、bool或者其它类型。但是可以将参与的数据放在“一个”tuple和list中进行比较。

%函数参数
必选参数:定义函数的时候确定下来参数的名字和位置,也就是平常使用的函数入参方式。

def power(x):
    return x * x

默认参数:定义函数时候,再入参之前提前给一些函数内参数设定默认值,同时也可以在调用的时候给这些参数赋值。调用时赋的参数值会覆盖掉默认参数值。

def power(x, n=2):
    s = 1
    while n > 0:
        n = n - 1
        s = s * x
    return s

而对于n > 2的其他情况,就必须明确地传入n,比如power(5, 3)。
注意:设置默认参数时:1)必选参数在前,默认参数在后,否则就会报错"SyntaxError: non-default argument follows default argument", 个人认为,如果默认参数在前,必选参数在后,那么再赋值的时候就必须给默认参数留出位置——也就是必须入参。那么也就失去了默认参数的设定意义。此外,这种方法在定义的时候也是不被python语法所允许的。
2)在函数有多个默认参数的时候,应当把变化小的参数放在后面,变化大的参数放在前面。
可变参数:可变参数也就是传入的参数个数是可变的,可以是任意多个参数,或者0个:

def calc(*numbers):
    sum = 0
    for n in numbers:
        sum = sum + n * n
    return sum

定义可变参数和定义一个list或tuple参数相比,仅仅在参数前面加了一个*****号。在函数内部,参数numbers接收到的是一个tuple,因此,函数代码完全不变。
关键字参数:关键字参数在输入以后在函数内部组成dict。注意在设置关键字参数以后,在关键字参数输入时,要按照字典的定义方法进行输入,否则输入就会出问题。

def person(name, age, **kw):
    print('name:', name, 'age:', age, 'other:', kw)
person('Bob', 35, city='Beijing')#关键字参数输入为dict形式

注意:既然关键字参数可以按照dict的输入方法输入不受限制的参数,那就可以按照dict形式进行键值对的查询等dict操作,以此来对输入的参数进行查找和判断。
命名关键字参数:
如果要限制关键字参数的名字,就可以用命名关键字参数,例如,只接收city和job作为关键字参数。这种方式定义的函数如下:

def person(name, age, *, city, job):
    print(name, age, city, job)

和关键字参数**kw不同,命名关键字参数需要一个特殊分隔符*,后面的参数被视为命名关键字参数。使用命名关键字参数时,要特别注意,如果没有可变参数,就必须加一个作为特殊分隔符。如果缺少*,Python解释器将无法识别位置参数和命名关键字参数。python编译器也就是会把本要作为关键字参数的参数视为位置参数

Selenium自动化测试及框架(selenium+python) - 环境搭建 test 阅读详情

相关推荐

Pandas入门教程(二十二):股票数据分析实战——yfinance 获取数据、技术指标与收益率分析

把 Pandas 用在真实场景,才能体会它的价值。本文以茅台股票为例,用 yfinance 获取历史行情,完成缺失值处理与列筛选,绘制收盘价曲线,计算 SMA 移动平均线与 RSI 相对强弱指数,并通过日收益率、累计收益率和波动率完成完整的量化分析流程。

Smell_of_earth的博客 321

python学习日记:part1

python前段时间也用过,弄了几个小爬虫,感觉python挺强大的,短小精悍,现在工作需要,现在重拾python。从零开始,当然也不完全从零开始,现在在博客记录下学习历程 前期准备: 1.python3.5 2.廖雪峰的python3教程 3.python3程序开发指南(第2版,修订版)

会飞的猪猪侠 627

别再乱设阻尼了!Abaqus动力分析中瑞利阻尼的α和β到底怎么算?

本文深入解析Abaqus动力分析中瑞利阻尼参数α和β的科学计算方法,帮助工程师准确设置阻尼参数以提升仿真精度。详细介绍了基于模态阻尼比的经典计算方法和多模态优化法,并结合工程案例演示参数设置流程,避免常见的阻尼设置误区。

weixin_42634811的博客 731

Python深入学习之《Fluent Python》 Part 1

Python深入学习之《Fluent Python》 Part 1 从上个周末开始看这本《流畅的蟒蛇》,技术是慢慢积累的,Python也是慢慢才能写得优雅(pythonic)的。 数据模型 python纸牌 import collections # 用来构建一个只有属性,没有方法的简单类,来代表扑克牌的号码和花色。 Card = collections.namedtuple('Card...

dianjialong8220的博客 313

爬取中国空气质量在线监测分析平台

1.准备,爬取的链接地址 https://www.aqistudy.cn/html/city_detail.html 2.分析 a.当打开链接后,数据已经设置好了,说明里面大部分都是js通过ajax调用的, b.打开f12分析代码 通过捕获到的数据包,发现当前请求为ajax,携带着一个为d的参数且该请求携带的数据是加密过的,并且响应也是加密过的 c.这时候的问题就是...

Mr Right 6370

树莓派 SPI操作

扩展板配备一款0.96inch,128864分辨率的oled显示屏,通过SPI控制,先上显示效果图。由于程序过长,在这里我就不把代码全部贴出来了,只是简单讲解一下spi的操作函数。管脚如下如所有,左边方框的管脚分别为MOSI MISO SCLK,左边CE0,CE1为两个片选管脚,分别对应上图中的spidev0.0,spidev0.1两个设备。下载spidev库,复制到树莓派,并行运行如下命令解压安装。spi设备,此处设备为/dev/spi-decv0.0。在/dev路径下面,我们可以发现两个spi设备。

weixin_46529898的博客 914

蓝桥杯-零基础python的刷题之路-杨辉三角形,Part1,二维数组解法

pyhton实现杨辉三角,用了两个for循环的新手代码学习

m0_37805091的博客 1061

安卓7.0+抓包难题:雷电模拟器9.0+Charles系统证书安装全攻略

HTTPS协议通过SSL/TLS加密保障网络通信安全,其核心机制依赖于证书信任链。在Android系统中,自7.0版本起,谷歌收紧了证书信任策略,默认仅信任系统预置的CA证书,这直接导致了传统抓包方法失效。理解这一原理对于移动开发、测试及安全研究至关重要,它揭示了应用层安全策略与系统底层机制的关联。通过将用户证书安装至系统信任区,可以突破此限制,实现HTTPS流量的解密与分析。这一技术在App调试、接口测试、安全审计等场景中具有广泛的应用价值。本文以雷电模拟器9.0和Charles抓包工具为例,详细演示了如

weixin_42521843的博客 279

吐血整理深度学习入门路线及导航【教学视频+大神博客+书籍整理】+【资源页】(2019年已经最后一个月了,你还不学深度学习吗???)

声明: 1)该文章整理自网上的大牛和机器学习专家无私奉献的资料,具体引用的资料请看参考文献。 2)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应。如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除。 3)博主才疏学浅,文中如有不当之处,请各位指出,共同进步,谢谢。 4)此属于第一版本,若有错误,还需继续修正与增删。还望大家多多指点。大家都共享一点点,一起为祖国科研的推进...

种树最好的时间是10年前,其次是现在!!! 5万+

scratch lenet(4): 开根号的C语言实现

使用C语言,分别使用二分法、牛顿法、卡马克快速法,求解正实数的开根号。包括公式推导、代码实现、运行结果,不使用任何第三方库和C标准库的数学库。

baiyu33的博客 4969

ArcGIS数据处理必备技能:从地理坐标到UTM投影的面转栅格完整流程

本文详细介绍了在ArcGIS中从地理坐标到UTM投影的面转栅格完整流程,包括坐标系转换、像元大小设置及质量控制等关键步骤。通过实战案例和Python脚本示例,帮助用户解决常见问题并优化数据处理效率,特别适合需要精确GIS数据分析的专业人士。

weixin_42628688的博客 180

大数据理论基础

大数据理论基础1.大数据分析基础大数据5V概念大数据处理思想数据分析与数据挖掘分布式处理优点常见数据挖掘方法python基础python函数python面向对象编程特性python常用链接库Linux & Ubuntu 操作系统基础 1.大数据分析基础 大数据5V概念 Volume(大量)——数据的大小决定所考虑的数据的价值和潜在的信息; Velocity(高速)——指获得数据的速度; Variety(多样)——指数据类型的多样性; Value(价值)——合理运用大数据,以低成本创造高价值; Ver

weixin_46499291的博客 3902

华为od面试手撕真题【分解质因数】

华为od面试手撕真题【分解质因数】

MISAYAONE的博客 1133

条件判断的使用以及循环

跟着廖雪峰老师的步骤在走,明白了条件判断以及循环的使用,明天将学习字典和set #计算100之内的和 sum=0 for x in range(101):    sum=sum+x   print(sum) Range()是函数 使用range可以获得括号中的数字 例如range(10)是0 1 2 3 4 5 6 7 8 9 10 十一个数字 #计算100之内的奇数和 su...

weixin_30514745的博客 93

【unity实战】Cinemachine虚拟相机实战,使用InputSystem+Cinemachine+CharacterController复刻各种主流游戏的相机控制

这里主要是探讨如何使用InputSystem+Cinemachine+CharacterController复刻各种主流游戏的相机控制,我们主要专注Cinemachine实战效果,所以并不会深入讨论Cinemachine和CharacterController比较细节的参数介绍。注意:前面为了测试方便,我还是先用的旧的输入系统代替InputSystem【推荐100个unity插件之10】Unity最全的最详细的Cinemachine(虚拟相机系统)介绍,详细案例讲解,快速上手。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 3750

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

遗传算法工程化实战:四层增强架构与五大参数调优

遗传算法(GA)作为一种无梯度、鲁棒性强的全局优化方法,广泛应用于调度排程、参数调优和复杂约束优化等场景。其核心原理源于自然选择与种群进化,但标准实现常因早熟收敛、约束处理粗放、参数僵化等问题在真实工业系统中失效。本文聚焦GA从理论到落地的关键跃迁——通过多样性维持、约束处理、自适应控制和精英保留四层轻量增强,结合种群规模、交叉率、变异率、选择策略与约束处理五大参数的实操取值逻辑,显著提升收敛稳定性与可行解质量。特别适用于混合编码、高计算成本、强硬约束的智能制造与物流优化任务。

weixin_30655569的博客 420

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

AI全栈实战 | 3.9-01 爬虫入门:requests 加 BeautifulSoup 三分钟跑通,但 90% 的人栽在这 4 个“礼貌“问题上

⚠️:本文内容仅用于。请遵守目标站点的服务条款与相关法律法规,不得对目标服务造成负担,不得采集、传播个人隐私数据。技术是中性的,边界在你手里。爬虫的入门技术(requests 发请求 + BeautifulSoup 解析)三分钟就能学会。真正区分"会用爬虫"和"会做爬虫的人"的,是这篇我们跑通"请求→解析→存储"的最小闭环,然后重点把"合规与礼貌"这根弦给你绷上。

源码获取 | 运行部署 | 定制二开修改,如果回复不及时请耐心等待,请见谅。 405

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

从一段视频到可漫游的 4D 有声场景:思路拆解与最小复现手记

只需一段手机视频,你就能生成可"走进去"的 4D 有声场景:转头时狗叫声方向随之变化,走近时声音更清晰。本文拆解 Video-to-4DAVScene 的核心思路,手把手带你用几十行 Python 搭出最小管线,把视频中的运动物体变成带空间位置的声源,并附上三个真实踩坑的排障经验,代码可直接跑。🎧

helloagent的博客 234

【每天一个 Python 小案例30】Python 基础知识综合小项目:我的工具盒

作为系列收官,本篇把前 29 篇的知识点合成一个能直接用的命令行工具"我的工具盒":计算器(用 ast 解析表达式,不碰 eval)、单位换算与温度转换(一张换算表 + 特例分支)、记账与分类统计(Decimal + JSON 持久化)、以及用"字典当命令表"把菜单和业务逻辑解耦的主循环。文中对比了 eval 的安全隐患与 ast 白名单的做法,解释了 lambda 闭包在字典里的写法与晚绑定陷阱,并在最后给出整个系列的知识地图,把变量、数据结构、控制流、函数、类、异常、文件、标准库八块内容对应到具体篇目。

xinjiyaya的博客 426

Python+Agent入门笔记(二):列表推导式、模块和异常,这些写 Agent 前得会

接上一篇《Python+Agent入门笔记(一)》。基础语法跑通之后,这篇聊几块日常写脚本绕不开的东西。还是按 JS/Go 开发者的视角写,尽量记录我实际卡过的地方。

qq_41241612的博客 430

详解Python条件语句

在 Python 中,if...else 是一种条件语句,可以根据给定的条件执行不同的操作。这个语句通常用于控制程序的流程。

2601_96798737的博客 206

Python3 协程:异步编程的核心机制与实战

协程是解决I/O密集型任务等待瓶颈的高效机制,相比线程更轻量、无锁开销。从yield到async/await的演进,使异步编程语义清晰、易于理解。通过async/await可实现并发执行多个任务(如gather、create_task),显著提升网络请求、爬虫等场景性能。关键在于使用异步库(如aiohttp)替代同步库,避免阻塞事件循环。合理控制超时与并发数,才能发挥协程最大优势。

Lxn2zh的博客 159

python如何控制浏览器

Python 可以通过 Selenium、Playwright 等工具实现浏览器自动化,从打开网页到执行复杂交互操作均可脚本化完成。Selenium生态成熟

2601_96797912的博客 76

torch.compile 差异仅 1e-6,边界样本预测为何翻转

torch.compile 加速后输出与 eager 不一致,部分预测翻转。逐层对比与 graph break 分析定位到动态分支翻转根因。容差回归仅适用于无分支翻转场景,零容忍场景应禁用编译。

昨日种种,皆成今我。今日种种,皆成新我。 159

二进制木马免杀-Python 分离免杀与 Web 挂马

二进制木马免杀-Python 分离免杀与 Web 挂马

2503_94637398的博客 268

Python 100讲课程导航:第08篇《Python input 与类型转换:构建可靠的交互程序》

本文详解Python中input()的返回类型为字符串,强调必须通过int()、float()等函数进行类型转换。重点讲解了输入验证的重要性,结合try-except处理ValueError等异常,实现可靠的交互程序。通过购物预算计算器实战,演示如何防范非法输入、处理边界值,并推荐使用Decimal避免浮点精度问题,提升程序健壮性。

铭渊老黄 134
上一篇: 浙江大学工程师学院非全日制非定向转博[经验贴]
下一篇: [转载]矩阵求导运算规则
流黄蛋
博客等级 码龄9年 1222粉丝 28原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值