有用的python小知识(一)(Python重要的小知识总结)

python基础知识题目练习(一)(待修改) print(1.2-1.0==0.2) # part 1 # False print(1.2-1.0) # part 2 # 0.19999999999999996 part 1 执行结果是false的原因:浮点数无法精确表示,看 part 2 的输出结果就一目了然了。 kvps = { '1' : 1, '2' : 2 } theCop... 阅读详情

一、注释

单行注释:以 # 开头,编程规范建议#后面跟一个空格

多行注释:用一对连续的三个引号,单引号或者双引号均可("""/’’’)

二、行与缩进

(1)python与其他语言明显的区别是没有大括号,而是用缩进表示代码块。

(2)需要注意每行语句不需要以分号结束。(学过c语言的应该注意一下)

三、Python中特有的交换两个变量的值的方法

直接将a, b两个变量放到元组中,再通过元组按照index进行赋值的方式进行重新赋值给两个变量。(不用再用一个中间值进行交换了)
如果不了解元组可以参考:
点击即可进入组合数据类型之序列类型(包含元组,列表,字符串)(Python学习笔记)
代码:

a=1
b=2
(a,b)=(b,a)
print(a)
print(b)

结果:

2
1

四、循环的巧应用(列表解析)

当你要建立一个1到10所有数字的平方时:

普通方法:

list=[]
for i in range(1,11):
    list.append(i**2)
print(list)

结果:

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

列表解析:

list=[i**2 for i in range(1,11)]
print(list)

结果:

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

总结:
可以看出,只需要将普通方法中的append后面括号里加上普通方法中的for i in range(1,11)加到列表里即可。

也就是普通方法经过复制粘贴是可以形成列表解析的,但并不是所有的for循环可以写成列表解析式。

五、eval()函数与str()函数

eval(<字符串>)的作用是将输入的字符串转变成Python语句。
str() 函数将整形转化为字符串形式.
注意:
无论用户在控制台输入什么内容,input()函数都以字符串类型返回结果。

代码展示:

x=eval(input("输入数字"))  
print(x)
print(x*2)
print(type(x)) 
x=str(x)     #此时x转变成了字符串形式
print(type(x))

结果:

输入数字6
6
12
<class 'int'>
<class 'str'>

如果不加eval()函数会出现如下情况:

x=input("输入数字")
print(x)
print(x*2) #会出现字符串“6”+“6”=“66”
print(type(x))

结果:

输入数字6
6
66
<class 'str'>

注意:
(1)使用eval()函数处理字符串需要合理使用,假如你直接输入字符串“Hello”,eval()函数会去掉两个引号,这时候将其解释为一个变量,而之前又没有定义过Hello变量,解释器会报错.

(2)若对“‘Hello"'使用eval()函数,仅仅会去掉外层的双引号,还会留下一对单引号,此时’Hello‘会被解释为字符串。

六、条件表达式的紧凑形式

语法:

<表达式1> if <条件> else <表达式2>

条件成立则输出表达式1,不成立则输出表达式2

代码:

guess=eval(input())
print("你猜{}了".format("对" if guess==99 else "错"))

结果:

99
你猜对了

七、try-except语句的应用

Python使用try-except语句来实现异常处理,其基本语法格式如下:

try:
     <语句块1>
except <异常类型>:
    <语句块2>

代码演示:

try:
    num=eval(input("请输入一个数:"))
    print(num**2)
except NameError:
    print("输入错误,请重新输入一个数")

结果:

请输入一个数:no
输入错误,请重新输入一个数

try-except语句还有多种用法,我再另一篇博客详细解释了下:
点击即可进入try-except语句的应用(超详细的学习笔记)

八、get()函数

语法:

dict.get(key, default=None)

key -- 字典中要查找的键。
default -- 如果指定键的值不存在时,返回该默认值。

代码:

dict={"a":"1","b":"2"}
x=dict.get("a","不存在")
y=dict.get("c","不存在")
print(x)
print(y)

若不了解字典类型:
点击即可进入(Python)组合数据类型之字典类型和操作(学习笔记)
结果:

1
不存在

九、组合数据类型的简单总结

1、元组是一种序列类型,一旦创建就不能被修改,使用小括号 () 或 tuple() 创建,元素间用逗号分隔

2、列表是一种序列类型,创建后可以随意被修改,使用方括号 [] 或list() 创建,元素间用逗号 , 分隔,列表中各元素类型可以不同,无长度限制

3、字典是键值对的集合,键值对之间有顺序且不能重复没,采用大括号{}和dict()创建。

4、集合是多个元素的无序组合,集合元素之间无序,不存在相同元素,元素间用逗号分隔,建立集合类型用 {} 或 set(),但是建立空集合类型,必须使用set()

5、集合可以用于数据去重,所以如果你定义了一个列表,想要去除相同元素,可以转换为集合类型后再转换为列表即可。
如果要详细了解可以参考:
(1)点击即可进入组合数据类型之序列类型(包含元组,列表,字符串)(Python学习笔记)

(2)点击即可进入组合数据类型之集合类型(学习笔记)(Python)

(3)点击即可进入(Python)组合数据类型之字典类型和操作(学习笔记)

代码演示:

L=[1,9,5,6,4,3,5,1,2,1,5,3]
L=set(L)  #列表转换为集合可以去重
L=list(L)  #去重完后可以在转换回来成列表
print(L)

结果:

[1, 2, 3, 4, 5, 6, 9]

十、lambda函数

a=lambda x,y:x+y
print(a(3,2))

结果:

5

这算是lambda函数简单的用法,以这个实例先来讲一下其语法格式:

   lambda [arg1 [,arg2,.....argn]]:expression

[arg…] 是参数列表

expression 是一个参数表达式

冒号前是参数,可以有多个,参数之间用逗号隔开,冒号右边为表达式。

lambda函数是一个匿名函数,为什么叫它匿名函数?

那是因为匿名函数并不需要用def关键字来声明,它主要应用于简单函数,不想单独去创建普通函数的时候使用。

注意:
1、参数表达式中的表达式不能超过一个

2、lambda 函数不能包含命令

3、lambda 函数不能访问自己参数列表之外的参数,只能完成非常简单的功能。

4、表达式中含有的参数需要在[arg…] 中有定义。

十一、函数sort()

1、仅对列表进行排序,改变列表自身顺序,无返回值。

2、语法格式:

  list.sort(key=None, reverse=False)

key:设置排序方法或者可以指定列表中用于排序的元素

reverse:True反序,False正序,若不赋值则默认为升序排列

(1) 先对简单列表进行排序:

>>> list=[2,1,6,5,9,8,6,3,]
>>> list.sort()
>>> print(list)
[1, 2, 3, 5, 6, 6, 8, 9]
>>> list.sort(key=None,reverse= True)
>>> print(list)
[9, 8, 6, 6, 5, 3, 2, 1]

(2)对字典组成的列表排序:

a = [{'Mike': 99}, {'John': 98},{'zoom':96}]
a.sort(key=lambda x: list(x.values()))
print(a)

结果:

[{'zoom': 96}, {'John': 98}, {'Mike': 99}]

对 a.sort(key=lambda x: list(x.values())) 的理解:
这语句中X是列表项即列表中的每个字典,list(x.values())是取字典的值转化为列表。简单讲就是用列表中每个字典的值进行排序。简单说一下:

d.values()返回字典d中所有的值信息
d.keys()返回字典d中所有的键信息

(字典的值就是99,98,96,字典的键是Mike,Zoom,John)对字典不了解的可以参考:

点击即可进入(Python)组合数据类型之字典类型和操作(学习笔记)

同理可推,若想要按照名字排序的话,可以这样写:

a = [{'Mike': 99}, {'John': 98},{'zoom':96}]
a.sort(key=lambda x: list(x.keys()))
print(a)

结果:

[{'John': 98}, {'Mike': 99}, {'zoom': 96}]

十二、推荐

最后,我总结我所有Python知识总结到一个博客里:
点击即可进入Python学习笔记大总结

后台扫描工具 - 御剑(珍藏版)附下载 版本说明:御剑后台扫描珍藏版 下载地址:安装包放下方网盘里了 链接:https://pan.baidu.com/s/1Bn7GtWb7AStcjzVahFOjSQ 提取码:zkaq 使用环境:windows 标题工具说明: 御剑后台扫描珍藏版是T00LS大牛的作品,方便查找用户后台登陆地址,同时也为程序开发人员增加了难度,尽量独特的后台目录结构。 附带很强大的字典,字典我们也是可以自己修改的,继续增加规则。 一、御剑后台扫描工具简介: 1、扫描线程自定义:用户可根据自身电脑的配置来设置调节扫描线程 2、 阅读详情

相关推荐

避坑指南:STM32移植CanFestival时那些没人告诉你的细节(含TJA1050硬件适配)

本文深入解析STM32移植CanFestival协议栈时的关键细节与TJA1050硬件适配技巧,涵盖AVR残留代码清理、定时器中断优化及CAN通信稳定性提升方案。特别针对TJA1050在特定波特率下的信号畸变问题提供实战解决方案,帮助开发者规避移植过程中的隐形陷阱,实现工业级稳定通信。

work3的博客 761

Python知识点(史上最全)

Python期末考试知识点(史上最全) python简介 Python是一种解释型语言 Python使用缩进对齐组织代码执行,所以没有缩进的代码,都会在载入时自动执行 数据类型:整形 int 无限大 浮点型 float 小数 复数 complex 由实数和虚数组成 Python中有6个标准的数据类型:

weixin_43474701的博客 17万+

H3C设备VRF配置实战:5步搞定多业务网络隔离(附排错技巧)

本文详细介绍了在H3C设备上配置VRF(虚拟路由转发)实现多业务网络隔离的实战方法。通过五步配置流程,从创建VPN-instance、绑定接口到配置独立路由表,帮助网络工程师在单台设备上构建逻辑隔离的企业级网络,并分享了高级路由配置与常见排错技巧。

gold8的专栏 937

Python 重要基础知识点超全笔记整理

Python 知识点超全学习笔记整理奉上 入门必学基础 变量和数据类型 条件分支与循环控制 列表及其应用 异常程序分析处理 函数及其应用 面向对象程序设计 以上链接均来自本人之前的博客笔记,如有不足之处欢迎指正分享,如需转载请先与本人联系。 ...

tomatoin的博客 1164

Cadence Virtuoso VIVA波形分析:从背景色修改到线宽调整的完整指南

本文详细介绍了Cadence Virtuoso VIVA波形分析工具的核心使用技巧,包括背景色修改、线宽调整等高级功能。通过具体操作步骤和配置方法,帮助工程师优化波形显示效果,提升工作效率。特别强调了与Calculator组件的配合使用,以及专业波形图的输出技巧。

weixin_27330481的博客 621

ECU-TEST 快速入门

ECU-TEST 是由位于德国德累斯顿的TraceTronic公司开发的一款用于嵌入式系统测试验证软件工具。自从2003年首次发布ECU-TEST ,该软件成为了汽车ECU开发的标准工具 ,同时也逐步成为了重型机械和工业自动化开发的标准工具 。该软件是起源自于一个控制单元的系统化测试的项目研究,从而为从德累斯顿工业大学脱离出来的TraceTronic公司奠定了基础。ECU-TEST旨在完成测试案例的规范化、评估、求解和归档。得益于该软件包含大量的自动化测试方法使得测试案例的所有必要功能如创建、求解和评估

wangying202的博客 1万+

python概述

1. Python简介 1.1 计算机语言概述 语言:交流的工具,沟通媒介 计算机语言:人跟计算机交流的工具,翻译官 Python是计算机语言的一种 1.2 Python编程语言 代码:人类语言,通过代码命令机器,跟机器交流 Python解释器:就是那个担任翻译工作的人 流程: 写代码 执行:由翻译官把命令翻译给机器,人把机器结果翻译 1.3 Python简史 1989年,G...

qq_41939492的博客 458

从隐私保护到生命守护:CPD技术中的传感器选择与权衡

本文探讨了智能座舱中儿童存在检测(CPD)技术的传感器选择与隐私保护平衡策略。通过分析毫米波雷达、UWB等先进技术的性能与隐私风险,揭示了如何在确保儿童安全的同时保护用户隐私。文章还展望了CPD技术与座舱生态系统的未来融合趋势,为汽车安全领域提供了重要参考。

weixin_29159441的博客 301

Python 基础篇(三)--初步编程总结,各种常识

1、 标识符 标识符是编程时使用的名字,用于给变量、函数、语句块等命名,Python 中标识符由字母、数字、下划线组成,不能以数字开头,区分大小写。 以下划线开头的标识符有特殊含义,单下划线开头的标识符,如:_xxx ,表示不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 导入;双下划线开头的标识符,如:__xx,表示私有成员;双下划线...

杨先森的专栏 3834

Cadence安装

选择刚刚解压的E盘DVD驱动中的setup.exe文件,安装路径推荐D盘,此处会自己给你新建文件夹,我们无需手动建文件夹。但是,新产品有一些BUG(影响使用流畅性),所以我们要对17.4打补丁,补丁包同样去吴川斌的博客下载。下载阿狸狗破戒大师 我这边下载的是版本V3.2.6,同样在吴川斌的博客下载安装包,链接同上。记录一下安装过程,方便以后安装使用Cadence。破解完成后,建议将这两个软件创建快捷方式到桌面。到这里,我们已经可以正常的使用Cadence了。对光盘映像文件解压后双击,可以在我的电脑看到。

电子那些事儿 1万+

物联网应用开发教程专栏介绍与说明——列表目录查阅(持续更新)

为方便查阅学习本专栏,特整理专栏介绍与说明及提供列表目录便于查阅。阿齐Archie《物联网应用开发教程》专栏。本专栏为物联网应用开发教程,将更新涵盖常见的WIFI、蓝牙、蜂窝网、以太网、Lora、NB-iot等物联网技术实战应用及详解其技术知识。专栏为技术文章,订阅一个文章即可本专栏内所有文章可看,实战开发,亲测无误,附视频演示效果,会持续更新本专栏。本专栏内有理论篇也有完整实战应用篇。

嵌入式阿齐Archie 2万+

Python简单的介绍

Python发音Python(发音:[ paiθ(ə)n; (US) paiθɔn ]),是一种面向对象的解释性的计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定。Python 具有脚本语言中最丰富和强大的类库,足以支持绝大多数日常应用。      这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所有的操作系统中运行。   

来年鱼的学习笔记 786

基于opencv的鱼群检测和数量统计识别鱼群密度带界面

摘要:本项目利用OpenCV图像处理技术实现了视频鱼类自动检测计数系统。通过背景减除、形态学处理和轮廓检测等方法,在视频帧中标记鱼类并统计数量。系统包含视频读取、前景提取、轮廓分析、中心点跟踪等核心功能,可实时显示计数结果。适用于水产养殖、生态监测等领域,具有实用价值。未来可通过参数优化、引入深度学习和多目标跟踪技术进一步提升准确性。(147字)

1720

Python语言基础知识点(一)(二)

第一章关于Python 一、Python 语言的简述 Python语言是一种解释型、面向对象的编程语言,是一种开源语言。 Python属于动态类定义语言,也是一种强调类型语言。 二、Python 语言的特点 1、简单、高级 2、面向对象 3、可扩展性、免费和开源的 4、可移植型、可嵌入型、丰富的库 三、Python语言的应用范围 1、操作系统管理 2、科学计算 3、Web应用 4、图形用户界面...

橙子的博客 3607

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Python自学笔记(一)(Python基础知识)

<br />Python的注释以"#"开头,且Python没有多行注释,只有单行<br />Python文件通常以".py"结尾,windows中也用".pyw"<br />windows一般已经装好 Python了,我的版本是2.5,设置下环境变量指向<br />python所在文件夹即可在命令行环境下运行Python程序了,当然也可以在<br />shell模式下一句句操作<br />Python是解释型语言,所以python.exe是解释器<br />','告诉解释器不要另起一行,而是在字符串后添加一

Knights的专栏 3268

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

python基础知识(一)(含练习和答案)

介绍了python基础,数据类型、判断语句、循环语句,有练习有答案

qq_52331239的博客 1034

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

python 基础知识(一)(BIF)

python有很多很有用的内置BIF,例如: 1.关于 listlistlist a = [2, 3] a.append(4) #往列表里面追加一个元素 a.extend([5, 6]) #往列表里面追加一个列表 a.insert(pos, element) #在列表的pos位置插入一个元素element ...

Stormjing的博客 325

从零学python必备知识(一、函数+类)(附示例代码)

文章目录1、迭代器2、lambda表达式3、内建函数filter,map,reduce,zip4、闭包的定义5、闭包的使用6、装饰器7、上下文管理器(附异常捕获)8、模块的定义9、 python安装、数据类型、函数及变长参数等基本知识不再赘述,下面从最基础的迭代器开始学习 1、迭代器 #样例1iter list1 = [1,2,3] it = iter(list1) print(next(it))...

锵锵锵锵蒋的博客 683

Python编程中容易被忽略的小知识点(一)(基础知识部分)

一、数字与表达式部分: 1、

u014332174的专栏 521

python代码基础知识总结(一)(python高阶函数与格式化输出)

机器视觉python代码基础知识总结(一) 一、理论简述 个人认为机器视觉可以作为人工智能的一大分支,尤其是随着深度学习、卷积神经网络、残差网络的出现,导致机器对图像识别精度高于了人类。因此,可以说机器视觉是人工智能的目前相对十分成熟的应用。 下面的表格从IPO层面介绍了各种领域之间的关系,这里分别包含的有数据图像处理(Digital Image Processing)、计算机视觉(Computer Vision)、计算机图形学(Computer Graphics)、人工智能(Artificial Inte

qq_26274961的博客 1527

Python基础操作(一)(新手必看)超详细 (基础知识专题)

** Python基础操作 ** 1.注释: 注释:注释的代码不会执行 注释的作用:增强了代码的可读性 Python注释分类: 单行注释:以#开头,#号后面的内容就是注释的内容 print(‘Hello World’) Pycharm提供了单行注释的快捷键:ctrl+/ 多行注释:又名“文档注释”,不是以#开头,是一对三引号 #三引号里面的内容就是注释的内容 """ print(‘Hello World’) print(‘Hello World’) print(‘Hello World’) print(‘

qq_45830025的博客 5366

基于知识图谱的古诗词推荐(python+爬虫+mysql+neo4j)(一)

这里写自定义目录标题基于知识图谱的古诗词推荐数据准备功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 基于知识图谱的古诗词推荐 本人小白,这是个人最近大创项目的成果,整理一下发出来。第一次写文 数据准备 https://www.xu

liujianfeng123a的博客 4556

2.python基础知识(分支循环、列表、元组、字典、集合、函数)(一)

笔记说明:这是我的学习笔记,这部分内容整理自小甲鱼的python零基础入门,但不限于小甲鱼。 目录 文章目录目录基础知识分支循环列表、元组、字典、集合、函数列表、元组函数字典与集合 基础知识 import os os.getcwd() os.chdir('D:\codes\python') print('i love python \n' *3) &quot;&quot;&quot;---小甲鱼说这是一个游戏,哈哈哈哈哈-...

菜鸟打怪升级副本 397

OpenCV Python——图像拼接(一)(图像拼接原理、基础知识、单应性矩阵 + 图像变换 + 拼接)

图像拼接技术详解 本文介绍了图像拼接的基本原理和实现方法。通过特征点检测与匹配,结合单应性矩阵变换,实现两幅有重叠区域的图像无缝拼接。文章首先展示了原始图像和拼接效果对比,解释了图像变换后的坐标变化规律(超出边界的部分将不显示)。随后详细讲解了特征匹配和单应性矩阵的原理,并提供了两种拼接方法:直接拼接和使用单应性矩阵变换的拼接。代码实现部分展示了如何通过SIFT特征检测、BFMatcher特征匹配、findHomography计算单应性矩阵,以及warpPerspective进行图像变换等关键步骤。文中还特

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 2322

零碎的知识点(一):高斯分布以及概率密度函数(Python)(持续更新)

高斯分布以及概率密度函数(Python)(持续更新)前言一、高斯分布二、概率密度函数 前言 项目上需要用到高斯分布、正太分布以及概率密度函数。我对这部分知识点产生了一些疑问,上网查资料发现很少有人在我这个点产生疑问(???可能是我太蠢了吧哈哈哈哈哈),所以我整理了一下自己看一看,如果后续有补充的会不断更新。 一、高斯分布 高斯分布究竟是个啥东西,网上介绍的人都介绍烂了,这里就不再赘述了。这里展示一下它的函数: f(x)=12Πσ2e−(x−μ)22σ2 f(x) = \frac{1}{\sqrt{2Πσ

xzs1210652636的博客 1万+

PYTHON实现HTTP request的一些有用的函数

我们知道,当需要设计一个程序和服务器进行交互时,往往会用到HTTP的request,即服务器有一个对外接口REST API,因此当向服务器发送符合格式要求的HTTP request时,服务器会给出响应,甚至执行一些任务。如需了解详情,请阅读。PYTHON是一种常见的编程语言,可以发送HTTP request,并接受从服务器中得到的反馈。博客中说明了一种使用PYTHON发送HTTP request并接受反馈数据的方法。当然,也可以使用JAVA,Swift,C#,Javascript等编程语言实现类似功能。

weixin_41640959的博客 1659
上一篇: 第5章 函数和代码复用(单元测试题Python含答案)
下一篇: 第六章 组合数据类型(单元测试题Python含答案)
不吃辣的IT男
博客等级 码龄7年 6560粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不吃辣的IT男

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值