python语言基础(最详细版)
文章目录
- 一、程序的格式框架
- 缩进
- 1、定义
- 2、这里就简单的举几个例子
- 注释
- 二、语法元素的名称
- 三、数据类型
- 四、数值运算符
- 五、关系运算
- 六、逻辑运算
- 七、运算符的结合性
- 八、字符串
一、程序的格式框架
缩进
1、定义
(1)python中通常用缩进来表示代码包含和层次关系,这个是与其他语言不同的;
(2)一个缩进==四个空格;
(3)缩进是pyth语言中表现框架的唯一手段。
那么缩进是需要我们去控制的吗?答案是不要。
原因:当表达分支,循环,函数,类等程序含义时,在if、while、for、def、class等保留字后面加上英文(冒号),回车后,便会自动缩进,表明代码之间的层次关系。
2、这里就简单的举几个例子
if语句的使用:

这里语句注意一下,python中不支持swit语句,使用if--elif--else来代替的。
for循环:

注释
(1)注解在python中不会被运行;
(2)python:
单行注释:用 # 来注释多行注释:用 ''' 语句 ''',注意,这里单引号是连续三个,并且是在英文模式下。
二、语法元素的名称
(1)变量:变量是保存和表示数据值的一种语法元素,一般用字母来定义,注意大小写,在python中对于大小写是十分敏感的。
a=10 #将10赋值给a
a,b=1,2 #python中支持多变量同时赋值
世界=10 #python是支持汉字使用的
(2)命名:python语言中允许使用大小写字母、数字、下划线(_)和汉字等字符,但是名字的首字符不能为数字,中间不能出现空格,长度没有限制。
(3)保留字:也称为关键字,指的是语句被程序语句定义好的字符;
注意:编写的程序不能定义与保留字相同的标识符。
Python3.x保留字列表:

三、数据类型
1.定义:
Python语言支持多种数据类型,最简单的包括数字类型、字符串类型,略微复杂的包括元组类型、 集合类型、列表类型、字典类型等。
2、数字类型:表示数字或数值的数据类型;
在python中提供了三种数字类型:整数、浮点数和复数。
(1)整数类型:有四种表示方法

(2)浮点数类型:一个浮点数可以表示为带有小数点的一般形式,也 可以采用科学计数法表示。
一般形式:123.45
科学计数法:1.234e2(e2表示10的2次方)
(3)复数类型:与数学中复数一样,也存在实部和虚部;在python中可以用有序对来表示复数如:(a,b),与a+bj一致。


注意:
- b为1时,1不能省略,即 1j表示复数,而j则表示Python程序中的一个变量。
- 复数类型中实部和虚部都是浮点类型,对于复数z,可以用z.real和z.imag分别获得它的实数部分和虚数部分
四、数值运算符
(1)Python提供了9个基本的数值运算操作符
(2)几点注意:
- 以上运算符都可以进行结合运算;
- 这里需要重点关注一下除法的使用,一共有三种商运算,“/,//,%”,分别表示浮点除,整除和取余;
(1)在除法中支持浮点数,复数的除法;
(2)如果用浮点除,即使两边为整数,最后结果依然为小数。
(3)对于整除:结果为整数,法则采用向下取整的方法(即为去附件更小的整数,例如:4.2取4,-5.2取-6);
print("都为整数,且为正")
a,b=4,2
print(a/b) #浮点除法
print(a//b) #整除
print(a%b) #取余print(" ")
a,b=4,3
print(a//b)print("取一个正数,一个负数")
a,b=-4,3
print(a/b) #浮点除法
print(a//b) #整除
print(a%b) #取余
结果;

(4)
- 整数和浮点数混合运算,输出结果是浮点数;
- 整数之间运算,产生结果类型与操作符相关,/ 运算的结果是浮点数;
- 整数或浮点数与复数运算,输出结果是复数。
五、关系运算
在符号“< , >,<=,>=,=”这几个关系下,若成为则返回True;反之返回False;
六、逻辑运算
- not (逻辑“非”)
如果 x 是True,则返回False。如果 x 是False,则返回True。x =True;not x返回False。 - and (逻辑“与”)
如果 x 是False,则 x and y 返回False,否则返回 y 的计算值。12 and 45, 0 and 45, False and 45。 - or(逻辑“或”)
如果 x 是True,x or y返回True,否则它将返回y值。
总结:这里大家可以这么记,
(1)在and运算符下,如果x为False,则返回False;其他一切情况都返回y;
(2)在or运算符下,如果x为Ture,则返回Ture;其他一切情况都返回y;
七、运算符的结合性
1、
(1)Python的运算符绝大多数是从左开始,只两个特例,乘方(**)和条件表达式运算从右开始。
(2)可以通过加上小括号来改变运算顺序。
2、
条件表达式:<表达式1> if <表达式2> else <表达式3>
执行步骤为:先执行if后面的表达式2,若为真,则计算表达式,否则计算表达式3。
3、数值运算函数

八、字符串
1、定义:Python语言中,字符串是用两个双引号“ ”或者单 引号‘ ’括起来的一个或多个字符。
2、在python中,字符串既可以从左往右数,也可以从右往左;

这里需要注意一下,从左数时候,下表从0开始正增长,而从右数时候,下标从-1开始,负增长。
3、获取长度,用python中提供的len()函数。
>>>len("譬如朝露,去日苦多。")
10
>>>len("Hello World")
11
4、获取字符串:
可以采用[N: M]格式获取字符串的子串,这个操作 被形象地称为切片。[N: M]获取字符串中从N到M(但不包含M)间连续的子字符串。
>>>"譬如朝露,去日苦多。"[2:4]
朝露
>>>"譬如朝露,去日苦多。"[5:-2]
去日苦
相关文章:
python语言基础(最详细版)
文章目录一、程序的格式框架缩进1、定义2、这里就简单的举几个例子注释二、语法元素的名称三、数据类型四、数值运算符五、关系运算六、逻辑运算七、运算符的结合性八、字符串一、程序的格式框架 缩进 1、定义 (1)python中通常用缩进来表示代码包含和…...
Java小技能:字符串
文章目录 引言I 预备知识1.1 Object类1.2 重写的规则1.3 hashCode方法II String2.1 String的特性2.2 字符串和正则2.3 StringBuilder,StringBuffer引言 String,StringBuffer,StringBuilder,char[],用来表示字符串。 I 预备知识 1.1 Object类 是所有类的根类 toString…...
2023美赛D题:可持续发展目标
以下内容全部来自人工翻译,仅供参考。 文章目录背景要求术语表文献服务背景 联合国制定了17个可持续发展目标(SDGs)。实现这些目标最终将改善世界上许多人的生活。这些目标并不相互独立,因此,一些目标的积极进展常常…...
openwrt开发板与ubuntu nfs挂载
1.ubuntu需要安装nfs服务 sudo apt-get install nfs-common nfs-kernel-server2.修改 /etc/exports文件: /home/test *(rw,nohide,insecure,no_subtree_check,async,no_root_squash) 前面是挂载的目录,后边是相应权限 rw:读写 insecure&am…...
【Redis】Redis持久化之AOF详解(Redis专栏启动)
📫作者简介:小明java问道之路,2022年度博客之星全国TOP3,专注于后端、中间件、计算机底层、架构设计演进与稳定性建工设优化。文章内容兼具广度深度、大厂技术方案,对待技术喜欢推理加验证,就职于知名金融公…...
Git小乌龟每次推送拉取都弹窗和用户名密码报错(解决办法)
目录 一、小乌龟推送代码到云端用户名和密码报错 (一) 遇到问题 (二)解决办法 二、小乌龟每次推送拉取都要输入账号和密码 (一)遇到问题 (二)解决办法 一、小乌龟推送代码到云…...
emacs 使用集锦
emacs 使用集锦 声明, 主要在c/c环境中使用! ---------------------------------------- 1. emacs 中 TAGS 位置设置 ---------------------------------------- a)临时使用方式: M-x visit-tags-table b)启动Emacs时自动加载方式ÿ…...
蓝牙 - 如何实现安全性
蓝牙技术在加密上做了很多工作,来保证你的数据安全。 这些年来,我们的许多电子设备都转向了使用无线技术进行连接。我们的鼠标、键盘、耳机和扬声器上不再有长长的纠缠的电线,而使用了简单方便的无线技术,科技进步改善了我们的生活…...
深入理解顺序io和随机io(全网最详细篇)
MySql系列整体栏目 内容链接地址【一】深入理解mysql索引本质https://blog.csdn.net/zhenghuishengq/article/details/121027025【二】深入理解mysql索引优化以及explain关键字https://blog.csdn.net/zhenghuishengq/article/details/124552080【三】深入理解mysql的索引分类&a…...
面试准备知识点与总结——(基础篇)
目录Java基础Java面向对象有哪些特征ArrayList和LinkedList有什么区别高并发的集合有哪些问题迭代器的fail-fast和fail-safeArrayList底层扩容机制HashMap面试合集解答设计模式单例设计模式哪些地方体现了单例模式Java基础 Java面向对象有哪些特征 Java面向对象有三大特征&am…...
Linux共享库,静态库与相关系统调用,工具的使用总结
tags: Linux C Syscall 写在前面 总结Unix/Linux操作系统的共享库/静态库部分, 以及一些系统调用. 参考Linux/UNIX系统编程手册41-42章. 测试程序均在Ubuntu下使用cc(gcc-9)运行成功. $ gcc -v Using built-in specs. COLLECT_GCCgcc COLLECT_LTO_WRAPPER/usr/lib/gcc/x86_64…...
「JVM 编译优化」javac 编译器源码解读
Java 的编译过程 前端编译: 编译器的前端,将 Java 文件转变成 Class 文件的过程;如 JDK 的 javac、Eclipse JDT 中的增量式编译器 ECJ;即使编译: JIT,Just In Time Compiler,在运行期将字节码转变成本地机器码的过程&…...
Leetcode DAY 34: K次取反后最大化的数组和 and 加油站 and 分发糖果
1005.K次取反后最大化的数组和 class Solution:def largestSumAfterKNegations(self, nums: List[int], k: int) -> int:nums sorted(nums, key abs, reverse True)for i in range(len(nums)):if nums[i] < 0:nums[i] -nums[i]k - 1else:continueif k 0:return sum(…...
2023美赛A题思路
在线解析 https://kdocs.cn/l/ccNGjN9sGugLkdocs.cn/l/ccNGjN9sGugL A题思路:(具体以题目解决问题顺序为主) 这道题分析植被就行,主要涉及不同植被间的相互作用,有竞争有相互促进,我查了下“植物科学数…...
前端上传文件
前言 以 vue 举例,原生 html css js 现在应该很少有人去写了 一、绘制样式 绘制两个标签,一个 <div></div> ,一个 <input type"file" />; 为 <div></div>添加 css 样式,…...
后台管理系统中选项卡的动态渲染
动态渲染选项卡其中router-link是为了当点击选项卡时跳转到选项卡所在的列表选项卡需要动态渲染,其中active是当选中后激活选中的样式为图标添加点击删除事件在状态机配置tabMenu(为了动态渲染)需要在tabMenu添加:active、title、…...
网络层重点协议之IP协议(IPv4)
网络层的作用就是来路由的选择,规划传输的路径,其中网络层的重点协议就是IP协议。4位版本号版本号的取值只有4和64位首部长度描述了IP报头有多长,报头中有一个选项部分,是变长的,是可有可无的部分,所以IP报…...
CentOS Stream 8配置DNS
1:用CentOS搭建DNS的目的是想解析一台下载服务器,IP地址172.18.0.58,现在是用IP地址方的式访问,想搭建DNS服务器用域名的方式访问。 使用下面的命令查看一下当前系统的Bind版本。 yum info bind 版本是9.11.36.我的CentOS是最小…...
【roLabelImg】windows下旋转框标注软件安装、使用、rolabelimg打包成exe
主要参考: roLabelImg安装、使用、数据格式roLabelImg在Win10系统下打包成exe - 问雪的文章 - 知乎 一、安装 1.1 直接下载exe运行 劝大家直接去下别人编译好的吧,本来是训练模型标记的,结果搞了半天去了解这个软件了,哎~ 我…...
2023美赛F题:绿色经济
文章目录背景要求词汇表背景 国内生产总值(GDP)可以说是最知名且最常用的衡量一个国家经济健康的指标之一。它通常用于确定一个国家的购买力和贷款能力,为国家提出提高GDP的政策和项目提供了动力。GDP “衡量一个国家在一段特定时间内生产的…...
**发散创新:策略即代码——用 Rust实现动态权限控制引擎**在现代软件系统中,权限管理早已不是简单的“用
发散创新:策略即代码——用 Rust 实现动态权限控制引擎 在现代软件系统中,权限管理早已不是简单的“用户-角色-资源”映射。越来越多的业务场景要求我们具备灵活、可扩展、易维护的权限决策机制。传统硬编码方式难以应对频繁变更的业务规则,而…...
Llama-3.2V-11B-cot实战:基于SpringBoot构建企业级智能客服原型
Llama-3.2V-11B-cot实战:基于SpringBoot构建企业级智能客服原型 最近在帮一个朋友的公司做技术选型,他们想快速搭建一个智能客服原型,既要成本可控,又要能快速集成到现有的Java技术栈里。聊了一圈,发现很多团队都卡在…...
Gemma-3-12B-IT WebUI惊艳效果:Agent框架设计+Tool Calling实现
Gemma-3-12B-IT WebUI惊艳效果:Agent框架设计Tool Calling实现 1. 引言:当大模型拥有“手”和“眼” 想象一下,你正在和一个非常聪明的助手聊天。它能回答你的问题,帮你写代码,甚至能创作故事。但当你问它“现在几点…...
淘宝虚拟商品选品实操:从儿童学习资料到游戏攻略的蓝海挖掘术
淘宝虚拟商品选品高阶指南:从儿童教育到游戏产业的精细化运营策略 在淘宝虚拟商品领域,真正能够持续盈利的卖家往往不是那些追逐热门品类的跟风者,而是懂得在细分市场中寻找差异化机会的"蓝海猎手"。儿童学习资料和游戏攻略这两个看…...
Spring Boot 3.0 + Java 17 微服务实战:用Gradle统一管理多模块依赖与版本,告别配置混乱
Spring Boot 3.0 Java 17 微服务实战:用Gradle统一管理多模块依赖与版本 在微服务架构中,依赖管理往往成为开发者的噩梦。想象一下,当你需要在十几个子模块中同步更新Spring Boot版本时,传统的做法是在每个模块的构建文件中逐一修…...
ARMv8虚拟化性能优化指南:TLB的ASID和VMID到底怎么用?
ARMv8虚拟化性能优化指南:TLB的ASID和VMID实战解析 虚拟化技术在云计算和容器化场景中已成为基础设施的核心支柱,而ARM架构凭借其能效优势,正逐步渗透到数据中心领域。但在高密度虚拟化环境中,内存访问性能往往成为瓶颈——我们曾…...
RK3568上Qt5.12.8编译eglfs报错?手把手教你解决fbdev_window.h缺失问题
RK3568 Qt5.12.8编译eglfs报错全解析:从fbdev_window.h缺失到完整解决方案 在嵌入式开发领域,RK3568作为Rockchip推出的高性能处理器,结合Qt框架的图形界面开发能力,为工业控制、智能终端等场景提供了强大的解决方案。然而&#…...
DDD难落地?就让AI干吧! - cleanddd-skills介绍
一、什么是urllib3? urllib3 是一个用于处理 HTTP 请求和连接池的强大、用户友好的 Python 库。 它可以帮助你: 发送各种 HTTP 请求(GET, POST, PUT, DELETE等)。 管理连接池,提高网络请求效率。 处理重试和重定向。 支…...
I2C总线协议实战:从零开始用Verilog实现一个I2C主设备(附完整代码)
I2C总线协议实战:从零开始用Verilog实现一个I2C主设备(附完整代码) 在嵌入式系统和FPGA开发中,I2C总线因其简单的两线制结构和灵活的多主设备支持,成为最常用的串行通信协议之一。本文将带您从零开始,用Ver…...
别再混淆了!一文搞懂目标检测中的AP、mAP和mAP@0.5:0.95区别
目标检测评估指标全解析:从AP到mAP0.5:0.95的实战指南 在计算机视觉领域,目标检测模型的性能评估一直是研究者关注的焦点。面对AP、mAP、mAP0.5:0.95等专业术语,不少开发者容易混淆它们的计算方式和适用场景。本文将深入剖析这些关键指标的技…...
