Python语法(全)

前言:

下面是Python基本的语法,大家耐心观看!


1.基础语法

1.1字面量

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

1.2字符串

字符串(string),又称文本,是由任意数量的字符如中文、英文、各类符号、数字等组成。所以叫做字符的串

字符串的引号嵌套

单引号定义法,可以内含双引号

双引号定义法,可以内含单引号

可以使用转移字符(\)来将引号解除效用,变成普通字符串

字符串拼接

注意:拼接仅限于拼接字符串

字符串格式化

"%s\%d\%f" % (表达式、表达式、表达式)

字符串格式化(快速)

f”{变量}  {变量}”的方式进行快速格式化

此方法精度和类型自动识别

格式化的精度控制

表达式格式化

字符串大小比较

ASCII码表

字符串是按位比较,也就是一位位进行对比,只要有一位大,那么整体就大

1.3注释

1.4变量

1.5数据类型

type语句

1.6数据类型转换

数据类型转换,将会是我们以后经常使用的功能。

如:

从文件中读取的数字,默认是字符串,我们需要转换成数字类型

后续学习的input()语句,默认结果是字符串,若需要数字也需要转换

将数字转换成字符串用以写出到外部系统 等等

注意:

1. 任何类型,都可以通过str(),转换成字符串

2. 字符串内必须真的是数字,才可以将字符串转换为数字

3.浮点数转整数会丢失小数部分

1.7标识符

标识符:用户编写代码时,对变量、类、方法等编写的名字,叫做标识符

Python中,

标识符命名的规则主要有:

内容限定

大小写敏感

不可使用关键字

不推荐使用中文

不可以数字开头

下面是常用关键字

1.8运算符

算数(数学)运算符

赋值运算符

1.9数据输入(input)

注意:无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型

1.10空格缩进

Python中默认4个空格为一个归属

在嵌套中尤为注意

2.判断语句

2.1布尔类型

2.2比较运算符

2.3 if语句

应用:

2.4 if else语句

应用:

2.5 if elif else语句

应用:

简写:

2.6判断语句的嵌套

应用:

3.循环语句

3.1 while循环的基础语法

应用:

注意:

条件需提供布尔类型结果,True继续,False停止

空格缩进不能忘

请规划好循环终止条件,否则将无限循环

3.2 while循环的嵌套应用

应用:

注意:

同判断语句的嵌套一样,循环语句的嵌套,要注意空格缩进,基于空格缩进来决定层次关系

注意条件的设置,避免出现无限循环(除非真的需要无限循环)

3.3 for循环的基础语法

应用:

3.4 for循环的嵌套应用

应用:

3.5 range语句

应用:

3.6变量作用域

3.6 whlie循环和for循环相互嵌套

3.7 continue和break关键字

语句 print("小美,我喜欢你") 不会执行

遇到break 循环直接结束  则不会运行语句  j += 1

4.函数

4.1函数的定义

函数:是组织好的,可重复使用的,用来实现特定功能的代码段

4.2函数的参数

注意:

传入参数的数量是不受限制的

可以不使用参数 也可以仅使用任意N个参数

4.3函数的返回值

返回值的定义

应用:

None类型

None可以主动使用return返回,效果等同于不写return语句

应用:

4.4函数的声明文档

在PyCharm编写代码时,可以通过鼠标悬停,查看调用函数的说明文档

4.5函数的嵌套调用

执行结果:

4.6变量的作用域

局部变量

全局变量

global关键字

作用:在函数等内部修改全局变量

使用前:

使用后:

4.7函数多返回值

当函数进行到第一个return 时,函数会直接结束并返回第一个return,不会返回第二个return

如果想要返回多个值,只需要按照返回值的顺序,写对应顺序的多个变量接收即可

注意:支持不同类型的数据return

4.8函数多种传参方式

位置参数

作用:调用函数时根据函数定义的参数位置来传递参数

注意:传递的参数和定义的参数的顺序及个数必须一致

关键字参数

作用:函数调用时通过“键=值”形式传递参数

注意:函数调用时,如果有位置参数时,位置参数必须在关键字参数的前面,但关键字参数之间不存在先后顺序

缺省参数(默认函数)

作用:缺省参数用于定义函数,为参数提供默认值,调用函数时可不传该默认参数的值(注意:所有位置参数必须出现在默认参数前,包括函数定义和调用

当调用函数时没有传递参数, 就会使用默认是用缺省参数对应的值

注意: 函数调用时,如果向缺省参数传值则修改默认参数值, 否则使用这个默认值

位置传递

传进的所有参数都会被args变量收集,它会根据传进参数的位置合并为一个元组(tuple),args是元组类型

关键字传递

参数是“键=值”形式的形式的情况下, 所有的“键=值”都会被kwargs接受, 同时会根据“键=值”组成字典

4.9匿名函数

函数作为参数传递

在test_func函数内部,传入compute函数,完成了对数字的计算操作

注意:计算逻辑的传递,而非数据的传递(先进行test_func再进行compute)

lambda匿名函数

函数的定义中

def 关键字,可以定义带有名称的函数

lambda 关键字,可以定义匿名函数(无名称)

有名称的函数,可以基于名称重复使用

无名称的匿名函数,只可临时使用一次

应用:

注意:只能写一行,无法写多行代码,且是临时的只能使用一次

5.数据容器

数据容器:一种可以存储多个元素的Python数据类型

Python中数据容器有:list(列表)、tuple(元组)、str(字符串)、set(集合)、dict(字典)

5.1 list列表

列表的定义

列表内的每一个数据,称之为元素

以 [ ]  作为标识

列表内每一个元素之间用, 逗号隔开

应用:

列表支持嵌套:

列表的下标索引

列表中的每一个元素,都有其位置下标索引,从前向后的方向,从0开始,依次递增

应用:

列表的反向下标索引

应用:

嵌套列表的下标索引

应用:

列表的常用操作

列表提供了一系列功能: 插入元素 删除元素 清空列表 修改元素 统计元素个数

列表的特点

5.2 tuple元组

元组的定义

元组最大特点:元组一旦定义完成,就不可修改

元组支持嵌套

注意:

元组只有一个数据,这个数据后面要添加逗号

元组的常用操作

应用:

注意:如果强行修改元组内容,会报错

元组的特点:

可以容纳多个数据

可以容纳不同类型的数据(混装)

数据是有序存储的(下标索引)

允许重复数据存在 不可以修改(增加或删除元素等)

支持for循环

5.3 str字符串

字符串的定义

字符串可以完成一些与列表、元组相同的操作

字符串的常用操作

字符串的特点

只可以存储字符串

长度任意(取决于内存大小)

支持下标索引

允许重复字符串存在

不可以修改(增加或删除元素等)

支持for循环

5.4序列

序列的定义

序列是指:内容连续、有序,可使用下标索引的一类数据容器 列表、元组、字符串,均可以可以视为序列

语法:

序列的常用操作:切片

切片:从一个序列中,取出一个子序列

操作:

注意:

此操作不会影响序列本身,而是会得到一个新的序列(列表、元组、字符串)

应用:

5.6 set集合

集合的定义

语法:

集合的常用操作

集合的特点

可以容纳多个数据

可以容纳不同类型的数据(混装)

数据是无序存储的(不支持下标索引)

不允许重复数据存在

可以修改(增加或删除元素等)

支持for循环

5.7 dict(字典、映射)

字典的定义

语法:

使用{}存储原始,每一个元素是一个键值对

每一个键值对包含Key和Value(用冒号分隔)

键值对之间使用逗号分隔

Key和Value可以是任意类型的数据(key不可为字典)

Key不可重复,重复会对原有数据覆盖

应用:

字典的嵌套

字典内容的获取

字典的常用操作

字典的特点

可以容纳多个数据

可以容纳不同类型的数据

每一份数据是KeyValue键值对

可以通过Key获取到Value,Key不可重复(重复会覆盖)

不支持下标索引

可以修改(增加或删除更新元素等)

支持for循环,不支持while循环

5.8 数据容器的对比

基于各类数据容器的特点,它们的应用场景如下:

列表:一批数据,可修改、可重复的存储场景

元组:一批数据,不可修改、可重复的存储场景

字符串:一串字符串的存储场景

集合:一批数据,去重存储场景

字典:一批数据,可用Key检索Value的存储场景

5.9容器通用功能

6.文件操作

6.1文件的编码

编码技术即:翻译的规则,记录了如何将内容翻译成二进制,以及如何将二进制翻译回可识别内容

计算机中有许多可用编码:

UTF-8

GBK

Big5 等

不同的编码,将内容翻译成二进制也是不同的

UTF-8是目前全球通用的编码格式 除非有特殊需求,

否则,一律以UTF-8格式进行文件编码即可

6.2文件的读取

open()打开函数

使用open函数,可以打开一个已经存在的文件,或者创建一个新文件

语法:

mode常用的三种基础访问模式

文件的常用操作

6.3文件的写入

操作案例

注意:

1.直接调用write,内容并未真正写入文件,而是会积攒在程序的内存中,称之为缓冲区

2.当调用flush的时候,内容会真正写入文件 这样做是避免频繁的操作硬盘,导致效率下降(攒一堆,一次性写磁盘)

3.文件如果不存在,使用”w”模式,会创建新文件

4.文件如果存在,使用”w”模式,会将原有内容清空

6.4文件的追加

操作案例

注意:

a模式,文件不存在会创建文件

a模式,文件存在会在最后,追加写入文件

7.总结

以上就是 Python基础语法的全部内容,Pyhton作为一个脚本语言,有着很大很多很方便的功能,希望大家认真学习!

作者留言:一部分内容资源为网络资源,如有侵权,及时沟通

创作时间:2024.5.25

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/644022.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

C语言数据结构栈的概念及结构、栈的实现、栈的初始化、销毁栈、入栈、出栈、检查是否为空、获取栈顶元素、获取有效元素个数等的介绍

文章目录 前言栈的概念及结构栈的实现一、 栈结构创建二、 初始化结构三、销毁栈四、入栈五、出栈六、检查是否为空七、获取栈顶元素八、获取有效元素的个数九、测试 1十、测试 2总结 前言 C语言数据结构栈的概念及结构、栈的实现、栈的初始化、销毁栈、入栈、出栈、检查是否为…

blender 布尔运算,切割模型。

1.创建一个立方体和球体。 2.选中立方体,在属性面板添加布尔修改器。点击物体属性右边的按钮选中球体。参数如下。 3.此时隐藏球体,就可以看到被切掉的效果了。

C结构详解

目录 1、结构模板 1. 建立结构声明 2. 定义结构变量 3. 访问结构成员 4. 初始化结构 声明结构数组 声明和初始化结构指针 1、结构模板 1. 建立结构声明 struct book{char title[MAXTITL];char author[MAXAUTL];float value; }; 该声明描述了一个又两个字符…

【漫画算法】哈希表:古代皇帝的秘密魔法书

❤️❤️❤️ 欢迎来到我的博客。希望您能在这里找到既有价值又有趣的内容,和我一起探索、学习和成长。欢迎评论区畅所欲言、享受知识的乐趣! 推荐:数据分析螺丝钉的首页 格物致知 终身学习 期待您的关注 导航: LeetCode解锁100…

三个有意思的链表面试题的完成

上一篇博客我们已经完成了链表的所有内容,那么这一篇博客我们来看一下三个特别有意思的链表题目。 **第一个题目如下:**相信不少朋友看到这题目就已经晕了,那就简单说明下这个题目,题目就是创建一个链表,其中每个节点…

软件构造复习1

一、软件构造的多维度视图: 共有三个维度:1.按阶段划分:构造时/运行时视图,2.按动态性划分:时刻/阶段视图,3.按构造对象层次划分:代码/构件视图 具体可如图所示(图片来自PPT&#…

数据库-SQL性能分析

SQL执行频率 慢查询日志 慢查询日志记录了所有执行时间超过指定参数(long_query_time,单位:秒,默认10秒)的所有 SQL语句的日志。 MySQL的慢查询日志默认没有开启,我们可以查看一下系统变量 slow_query_l…

掩码生成蒸馏——知识蒸馏

摘要 https://arxiv.org/pdf/2205.01529 知识蒸馏已成功应用于各种任务。当前的蒸馏算法通常通过模仿教师的输出来提高学生的性能。本文表明,教师还可以通过指导学生的特征恢复来提高学生的表示能力。从这一观点出发,我们提出了掩码生成蒸馏&#xff08…

Redis常见基本类型(5)-List, Set

List 命令小结 命令及解释时间复杂度lpush/rpush key value[key value...](向右/左端插入元素)O(k), k是元素个数linsert key before | after pivot value(在某个坐标之前/右插入元素)O(n), n是pivot距离头尾的距离lrange start end(获取从start到end部分的元素)O(s n): s是…

与用户沟通获取需求的方法

1 访谈 访谈是最早开始使用的获取用户需求的技术,也是迄今为止仍然广泛使用的需求分析技术。 访谈有两种基本形式,分别是正式的和非正式的访谈。正式访谈时,系统分析员将提出一些事先准备好的具体问题,例如&#xff0…

Java使用apache.poi生成excel插入word中

加油,新时代打工人! 工作需求,上个文章我们生成好的word,这次将生成好的excel表格数据,插入word中。需要准备好excle数据,然后插入到word中。 最后个需要,就是把这些生成好的word文档转成pdf进行…

基础技术-ELF系列(1)-ELF文件基础

成就更好的自己 本篇是基础技术系列中ELF相关技术的首篇文章。 尽管网上有许多关于ELF相关内容的文章,但总体而言,要么是一些非常基础且重复性强的内容,要么直接深入探讨相对高深的主题,缺乏系统化分析和解释。 接下来&#xf…

C++技能进阶指南——多态语法剖析

前言:多态是面向对象的三大特性之一。顾名思义, 多态就是多种状态。 那么是什么的多种状态呢? 这里的可能有很多。比如我们去买火车票, 有普通票, 学生票; 又比如我们去旅游, 有儿童票&#xff…

10款免费黑科技软件,强烈推荐!

1.AI视频生成——巨日禄 网页版https://aitools.jurilu.com/ "巨日禄 "是一款功能强大的文本视频生成器,可以快速将文本内容转换成极具吸引力的视频。操作简单,用户只需输入文字,选择喜欢的样式和模板, “巨日禄”就会…

Nginx - 安全基线配置与操作指南

文章目录 概述中间件安全基线配置手册1. 概述1.1 目的1.2 适用范围 2. Nginx基线配置2.1 版本说明2.2 安装目录2.3 用户创建2.4 二进制文件权限2.5 关闭服务器标记2.6 设置 timeout2.7 设置 NGINX 缓冲区2.8 日志配置2.9 日志切割2.10 限制访问 IP2.11 限制仅允许域名访问2.12 …

【408真题】2009-16

“接”是针对题目进行必要的分析,比较简略; “化”是对题目中所涉及到的知识点进行详细解释; “发”是对此题型的解题套路总结,并结合历年真题或者典型例题进行运用。 涉及到的知识全部来源于王道各科教材(2025版&…

qemu+gdb调试linux内核

打开CONFIG_DEBUG_INFO,编译内核 通过图形菜单配置该宏,执行make menuconfig。 kernel hacking —> compile-time checks and compiler options —> compile the kernel with debug info 验证是否打开成功,grep -nr “CONFIG_DEBUG_INFO” .config。 打开成功,然后…

AcWing 3466. 清点代码库(STL:map,vector)

3466. 清点代码库 需要求有几种不同数列&#xff0c;每种有多少个&#xff0c;可以想到用map。它的键是一个数列&#xff0c;可以把它放在vector里。也就是map<vector<int>,int> 要满足要求的输出序列&#xff0c;就要想把它放在其他容器&#xff0c;或数组里&…

【Linux】信号之信号的保存和处理详解

&#x1f916;个人主页&#xff1a;晚风相伴-CSDN博客 &#x1f496;如果觉得内容对你有帮助的话&#xff0c;还请给博主一键三连&#xff08;点赞&#x1f49c;、收藏&#x1f9e1;、关注&#x1f49a;&#xff09;吧 &#x1f64f;如果内容有误或者有写的不好的地方的话&…

仿《Q极速体育》NBACBA体育直播吧足球直播综合体育直播源码

码名称&#xff1a;仿《Q极速体育》NBACBA体育直播吧足球直播综合体育直播源码 开发环境&#xff1a;帝国cms7.5 空间支持&#xff1a;phpmysql 仿《Q极速体育》NBACBA体育直播吧足球直播综合体育直播源码自动采集 - 我爱模板网源码名称&#xff1a;仿《Q极速体育》NBACBA体育直…