Python学习笔记——基础

小甲鱼《零基础入门学习Python》学习笔记 根据老师的建议,现在将第二次复习小甲鱼的《零基础入门学习Python》而做的学习笔记,上传到网上,方便今后复习和保存,因为是手写的,所以做了扫描锐化处理,方便阅读。 ... 阅读详情

1. 基础

使用pycharm进行python学习
REPL:read evaluate print loop,交互式命令行
注意:作用域只有函数和类作用域,其他的变量都是全局的

1.1 hello world

print("hello world") # 带换行
print("hello world", end="") # 换行替换成空字符串

1.2 注释

单行:#
多行:'''或"""进行包裹

1.3 数据类型

获取数据类型:type(数据),如type(18),输出为:<class 'int'>

数据类型有:int float str

1.3.1 整数

十进制:15
二进制:0b1010
八进制:0o12345
十六进制:0x12345

进制转换:(结果为字符串)
bin():10转2进制
oct():10转8进制
hex():10转16进制

创建整数:int(),接收整数、小数、字符串,第二个参数用于指定进制
int():默认返回0
int(89):返回89
int(89.9):返回89
int('89'):返回89
int('11110001',2):返回该2进制数的十进制数形式

1.3.2 浮点

创建浮点数:float(),同上
float():默认0.0
float(2.3e8):可以使用科学计数法

注意:浮点数存在精确问题:print(1.1+2.2-3.3)
解决方案:

  1. decimal模块,小数
from decimal import Decimal

Decimal('1.1')+Decima('2.2')-Decimal('3.3') # 结果为0.0
  1. fractions模块,分数
from fractions import Fraction

Fraction(11,10)+Fraction(22,10)-Fraction(33,10) # 结果为0.0

1.3.3 布尔类型

有两个值:True False
True == 1
False == 0
True+False+5 :结果为6

1.4 运算符

常见的:+ - * /
特殊的:整数除://,如:print(9//4)结果为2
特别注意:整数除在存在负数的情况为:倍数求解,即被除数=除数*倍数+余数,一个原则是:余数必须在[除数,0]或[0,除数]之间!

9 // 4 # 2
9 // -4 # -3  9 = -4 * -3 + -3
-9 // 4 # -2  -9 = 4 * -3 + 3
-9 // -4 # 2   -9 = -4 * 2 + -1

取余运算符:%

9 % 4 # 1
1.25 % 0.5 # 0.25
9 % -4 # -3
-9 % 4 # 3
-9 % -4 # -1

幂运算:**,如:3**2,结果为9,或使用pow(3,2)
布尔运算:and or not
赋值运算符:=,支持连等赋值!
赋值加运算:+= -= *= /=
比较运算符:> < == >= <= != is is not(is用于比较是否是同一对象,比较地址)

a=b=[1,2]
c=[1,2]
a==b #True
a==c #True
a is b #True
a is c #Flase

1.4.1 不可变类型对象比较is

注意:不可变对象内存可能会被重用

a = 18
b = 18
id(a) == id(b) #True
a is b #True

1.4.2 链式比较

a = 5
0 < a < 10 #True
1 == 2 < 3 #False
1 == 2 and 2 < 3 #False

1.5 关键字

查看所有关键字:help()进入手册,再查询keywords
导入keyword模块也可以看到:

import keyword
keyword.kwlist

1.6 标识符

命名规则:区分大小写,不能为关键字,字母数字下划线的组合,不能以数字开头

1.7 None

用于表示数据不存在,该对象占据内存空间,常用于初始化或重置对象:a = None

1.8 运算符优先级和结合性

优先级相同时,看结合性,加减乘除都是左,赋值运算为右,and优先于or结合性都为左
建议使用小括号

1.9 range类

一种序列类型,表示不可变整数序列,包头不包尾
格式:
range(stop)
range(start,stop)
range(start,stop,step)

整数序列起始值默认为0,默认步长为1

print(list(range(5)) # [0,1,2,3,4]
print(list(range(0,-4,-20)) # [0,-4,-8,-12,-16]

注意:range()函数返回的是一个迭代器对象,可以使用list()进行转换
注意:range对象优点:节省内存空间,所有range对象使用空间都相同,只有使用时才会去计算
注意:range属于序列类型,可以使用in或not in来检查其中是否包含值

1.10 列表

相似的有:列表、元组、字典、集合

特点:

  1. 内部数据都是有序的
  2. 每个数据都有两个整数索引:通过任意索引总能映射到唯一数据
  3. 列表数据可重复
  4. 列表数据可存储任意类型,可以混合存储
  5. 列表占用空间会动态改变,增加或减少

列表长度:len(列表)

1.10.1 创建列表

格式:[],如:a = [1,2,'3']
格式:list(),如:list([1,2,'3'])

1.10.2 列表元素的索引

每个元素都有两个整数类型的索引,一正一负:
正索引:左侧从0开始,依次增1
负索引:右侧从-1开始,依次减1

获取索引:只返回第一个匹配元素的正索引:index(元素,[start[,stop]]):如L.index(3),如果列表中不存在指定元素会报错

1.10.3 获取列表元素

列表[索引]:如L[10]或L[-4],如果索引不存在会报错,索引越界

列表[start:stop:step]:切片,得到原始列表的拷贝,不包括stop元素
不指定step,默认步长1
当step为正:(正向)
不指定start,默认第一个元素
不指定stop,默认最后一个元素

当step为负:(反向)
不指定start,默认最后一个元素
不指定stop,默认第一个元素

注意:切片允许索引越界!!超出索引则默认取到边界值

slice(start,stop,step):内置函数切片,start,stop和step默认都是None

L[1:7]
L[slice(1,7,None)]

1.10.4 判断是否存在指定元素

in:判断,存在True,不存在False,5 in L
not in:判断,不存在True,存在False,5 not in L

1.10.5 修改元素

L[2]=5:一次改一个
L[1:4]=[1,9,2]:一次改多个
L[1:4]=[9]

1.10.6 增加元素

列表.append(元素值):列表追加
列表.extend(列表):列表连接
列表.insert(索引,元素):在某个索引位插入元素
L[2:2]=[8,9,0]:在索引为2的位置插入

FreeRTOS笔记(十五)FreeRTOS总结 文章目录01 - 裸机和FreeRTOS区别1.1 - 裸机1.2 - FreeRTOS1.3 - 区别02 - 对FreeRTOS的感受03 - 推荐 上一文链接:FreeRTOS笔记(十四)[简] 软件定时器、事件组、任务通知 01 - 裸机和FreeRTOS区别   学完FreeRTOS,应该要自己总结一下FreeRTOS和裸机的区别,宏观上说,FreeRTOS是一个运行在裸机上的微内核,... 阅读详情

相关推荐

K210开发板学习笔记(三)——STM32+K210+SD卡实现人脸识别(完整K210代码)

更新日记:2022年4月26日 更新了串口通信部分的内容,本文写的略为粗糙,恐有不当之处,希望大家不吝赐教。 人脸识别 一、MaixPy IDE开发 参考博主晨少hc的博文(https://blog.youkuaiyun.com/HuangChen666/article/details/113995079)来实现人脸识别功能,我用的硬件是亚博智能的K210开发板,在配置工程中有几步和这个博主的不一样,需要注意。 所需要的文件有:模型文件),脚本文件,ide需要的bin文件...

Embedded learner的博客 4万+

REPL (read-evaluate-print-loop)概念-读取评估打印循环

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33757609的博客 1969

PCIE Lane Margining Linux 环境配置

Copy all the provided files in folder PYC38 or PYC310 to the created pcie_lmt folder. Index of /ftp/python/3.8.10/Copy below commands to a file and rename it as "scan_pcie.py", the commands are from "685662 PCIe-LMT-Gen4_Gen5-r0p77.pdf" in the lane margi

mysongshine的博客 1436

--eval mongo_这就是为什么您的read-eval-print-loop如此惊人的原因

--eval mongoby IObert 由IObert 这就是为什么您的read-eval-print-loop如此惊人的原因 (This is why your read-eval-print-loop is so amazing) One of the things that makes the tech community so special is that we are alwa...

cumi6497的博客 493

华为防火墙USG6600全流量日志配置指南:从流量监控到NAT日志的完整方案

本文详细介绍了华为USG6600防火墙全流量日志配置方案,涵盖流量监控、NAT日志及安全事件溯源等核心功能。通过精细化配置和性能优化技巧,帮助企业构建高效、合规的日志体系,提升网络安全运维效率。文章特别强调了日志采样与字段过滤的实用方法,适用于高流量环境下的资源优化。

gin88的博客 348

视觉Transformer实战 | Token-to-Token Vision Transformer(T2T-ViT)详解与实现

Vision Transformer (ViT) 在计算机视觉领域取得了巨大成功,但标准的 ViT 存在一些局限性,如需要大规模预训练数据、对局部结构建模不足等。Token-to-Token ViT (T2T-ViT) 通过引入渐进式分词过程改进了原始 ViT,使其能够在中小型数据集上取得更好的性能。本节将详细介绍 T2T-ViT 的技术原理,并使用 PyTorch 从零开始实现 T2T-ViT。

盼小辉丶的博客 4万+

java9新特性-5-Java的REPL工具: jShell命令

1.官方Feature 222: jshell: The Java Shell (Read-Eval-Print Loop) 2.产生背景 像Python 和 Scala 之类的语言早就有交互式编程环境 REPL (read - evaluate - print - loop)了,以交互式的方式对语句和表达式进行求值。开发者只需要输入一些代码,就可以在编译前获得对程序的反

songhongk的专栏 1351

用 ADT 连接 SAP S/4HANA Public Cloud 开发租户的完整落地指南

摘要:在SAP S/4HANA公有云中进行ABAP开发时,必须使用Development Tenant(客户端080)而非Customizing Tenant(客户端100)连接ADT工具。开发用户需具备SAP_BR_DEVELOPER角色且写权限不受限,开发对象应创建在结构包的子包中。连接前需确认正确的ABAP服务URL(通常为Launchpad URL去掉"/ui"),并通过运行控制台程序验证全链路功能。典型开发场景如通过BAdI实现业务校验时,需遵循Clean Core原则在指定包

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 338

node和express框架的基础入门

(一) NODE在真实项目中的应用 1.node 的特点 基于v8(webkit内核)引擎渲染和解析js (所以它非后台语言是一个工具或环境,用来解析js的工具或环境 )(类似:webview/谷歌浏览器等) 1.基于命令$ node xxx.js 把js代码在node环境里执行。 2.基于REPL模式(Read-Evaluate-Print-Loop,输入-求值-输出-循环)$ node ...

Lielying的博客 534

【AI测试必学】DeepSeek API 快速入门:获取 API Key 与调用 API 步骤详解

DeepSeek API 使用与 OpenAI 兼容的格式,可以通过修改配置使用 OpenAI SDK。生成的 API Key 只会显示一次,请妥善保存。注册并登录账号,进入左侧导航栏的。创建 API Key。

blues_C的博客 1万+

【AIGC】大模型面试高频考点07-注意力(Attention)篇

AIGC面试高频考点

一个内容严谨、方向前沿、极具实践价值的AI大模型技术分享站 3363

Read–eval–print loop

REPL 读入,计算,输出 很小的交互环境 转载于:https://www.cnblogs.com/dmdj/p/3514938.html

weixin_34150503的博客 288

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

python学习笔记

(可以理解为数组)可以容纳多分数据的数据类型,每份数据称为元素# 定义变量name = ['张三','李四','王五']# ['张三', '李四', '王五']# 定义空列表age = []print(age)# []# []列表的元素也可以是列表,即嵌套列表(二维数组)且元素类型不受限,不同类型的元素可以放置在同一个List当中。

2301_80362318的博客 843

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

计算机控制技术及应用

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

Python 基础 学习笔记

BHK 2302

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

python 学习笔记

python 学习笔记

缥缈的云 专栏 687

Python学习笔记(全是干货)

Python学习笔记(全是干货) 【下载地址】Python学习笔记全是干货分享 本资源文件是《Python学习笔记(全是干货)》的完整内容,由作者根据自身学习编程的经验和体会精心整理而成。为了帮助大家更好地掌握Python编程,作者还录制了相应的系列视频教程《手把手教你学Python》 ...

gitblog_06637的博客 960

Python3基础学习笔记资源下载

Python3基础学习笔记资源下载 去发现同类优质开源项目:https://gitcode.com/ 欢迎来到本仓库!这里提供了《Python3基础学习笔记.pdf》资源文件的下载。 简介 《Python3基础学习笔记.pdf》是一个专为Python初学者准备的宝贵学习资料。本笔记详细介绍了Python 3.4的基本语法和高级特性,内容系统全面,旨在帮助读者快速掌握Python编程的基础知识。 内...

gitblog_06706的博客 345

python学习笔记—— 基础语法

第二节 python基础语法 一、输出语句 1、print():打印语句 2、python3中表示内置函数,python2中表示打印语句。 3、print()语句作用: ①打印输出; ②可以打印输出数字、字符串、列表等数据; ③可接受多个参数,多个参数间用逗号隔开; ④可接受关键字参数(python2中不支持); ⑤可接受end参数,字符串默认"\n"。 二、输入语句 1、input(用户输入提...

change20008的博客 330

Python学习笔记一

Python学习笔记一

xiaojkql的博客 324

Python3基础学习笔记资源获取:为零基础学习Python提供完美起点

Python3基础学习笔记资源获取:为零基础学习Python提供完美起点 去发现同类优质开源项目:https://gitcode.com/ Python作为一种流行的编程语言,其易学易用的特性吸引了许多初学者。今天,我们要为大家推荐一个开源项目——《Python3基础学习笔记资源获取》,它为Python初学者提供了一个宝贵的学习资源。以下是对这个项目的详细介绍。 项目介绍 《Python3基础学习...

gitblog_06701的博客 379

python数据可视化学习笔记

学习笔记,有待更新

weixin_45679438的博客 921

Python学习笔记

Python学习笔记 Python学习笔记(手写扫描版)

secretboys的博客 174

【Python】Python学习笔记10

【代码】【Python】Python学习笔记10。

Treasure031227的博客 608

Python基础 · 学习笔记

创建自定义函数def functionname([形参]): # 赋值给某形参 则为其默认值,默认值必须在所有形参最后# 不给有默认值的形参传参时,该形参使用默认值参与运行# 定义形参为可变object时,使用*args,**kwargs"""定义的函数的注释说明""" # 有参数的情况下,在此处对定义的形参进行注释说明[return 执行结果(返回值)] # 定义的函数 全部 执行成功时 才执行的代码块,非必选项# 调用函数的时候,明确输出/打印 那就不需要返回值。

2301_77330550的博客 1346

Python学习笔记说明

Python学习笔记说明所有的Python学习笔记都是我在学习廖雪峰的官方网站中的Python教程过程中记录下来的,所以大部分内容会与廖大大教程中的内容相重合,我只是想自己再写一遍,加深印象,作为记录,以便日后复习。 如果大家想学习Python,可以去廖大大的网站。 最后感谢廖大大的无私奉献

link98 301
上一篇: Java小知识点
下一篇: Python学习笔记——进阶
天落枫
博客等级 码龄10年 91粉丝 92原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值