python核心语法

目录

    • 核⼼语法
      • 第⼀节 变量
        • 0.变量名规则
        • 1.下⾯这些都是不合法的变量名
        • 2.关键字
        • 3.变量赋值
        • 4.变量的销毁
      • 第⼆节 数据类型
        • 0.数值
        • 1.字符串
        • 2.布尔值(boolean, bool)
        • 3.空值 None

核⼼语法

第⼀节 变量

变量的定义变量就是可变的量,对于⼀些有可能会经常变化的数据,我们需要使⽤⼀个符号,这样才能计算中使⽤它x = "world"
这样我们就新定义了⼀个变量,它的值是"world", 修改⼀下Hello world的例⼦,这次我们使⽤变量x。print("Hello", x)

对于变量,我们可以往⾥任何我们想放的东⻄,⽽这个抓⼿,就是变量名,提着这个抓⼿,我们可以更⽅便的使⽤容器⾥的东⻄。

0.变量名规则

Python变量名遵循以下的规则:

  • 变量名由字⺟、数字和下划线组成,也就是a-z, A-Z, 0-9和_
  • 变量名不能以数字开头。
  • 变量名是区分⼤⼩写的。
1.下⾯这些都是不合法的变量名

1abc|123 # 不能以数字开头
abc- # 注意这是横杠符号,不是下划线

2.关键字

以下的这些单词都是Python的关键字,每个编程语⾔都有各⾃的关键字,它们组成了编程语⾔基本的语法规则。

False   await       else        import       pass
None    break       except      in           raise
True    class       finally     is           return
and     continue    for         lambda       try
as      def        from        nonlocal      while
assert  del        global       not          with
async   elif       if           or          yield

定义了⼀个与关键字相同的变量,代码会在运⾏的时候报错.

3.变量赋值

变量是可以重复使⽤,并且是可以修改的,由于Python的变量不需要先声明,所以变量的声明和赋值是在同⼀⾏代码完成的,⽐如我们上⾯声明的name变量。

name = "how are you "

在这⼀⾏⾥,我们先定义了⼀个名为"name"的变量,然后给它赋值为"Smith",这样,我们就有了⼀个变量"name",它的值是"Smith"。变量必须要先声明,才能使⽤。如果使⽤了⼀个从未定义过的变量xxx,Python解释器会抛给你⼀个这样的错误:

NameError: name 'xxx' is not defined

在变量定义完成后,我们可以随意读取、修改它的值,⽐如:

# 定义name变量,赋值为"John"
name = "john"
print("Mr", name)
# 修改变量的值为"Jones"
name = "wones"
print("Mr", name)

这上⾯这个例⼦中,我们使⽤了同⼀个变量"name",但它的值发⽣了变化,导致程序中两次输出的结果也发⽣了相应的变化。
有时候,我们需要定义好⼏个变量,以进⾏计算。⽐如现在我想要定义三个变量,并把它们的值都设为1,可以这样写:

a = b = c = 1

这样就定义三个变量,且它们的初始值都是1,那如果我想定义的三个变量值都不⼀样呢?

a, b, c = 1, 2, 3

这样写其实就相当于是:

a = 1
b = 2
c = 3

既然可以同时给多个变量赋予不同的值,可以直接交换变量的值

# 定义两个变量,其中a=1, b=2
a, b = 1, 2
# 进⾏交换,现在a=2, b=1
a, b = b, a
4.变量的销毁

在Python中,我们⼀般⽆需⼿动的去销毁变量,Python的垃圾回收机制会帮我们处理掉那些不再使⽤的变量,如果我们想刻意销毁删除某个变量,可以使⽤del关键字,像这样
del name
销毁后,这个变量就像没有定义过⼀样,再使⽤它的话就会产⽣异常。

第⼆节 数据类型

三种基本的数据类型:

  • 数值,包括整数和浮点数
  • 字符串
  • 布尔值
0.数值

Python中数值有两种类型,整形(int)和浮点型(float),通俗⼀点的讲,⼀个是不带⼩数点的,⼀个带⼩数点的。

# 这是⼀个整形
a = 100
# 这是⼀个浮点型变量
b = 3.14

整形和浮点形数值可以相互运算,⽐如

# c 是⼀个浮点型变量
c = a + b

这个很容易理解,⼀个整数加上⼀个⼩数,得到的肯定还是⼀个⼩数。我们再看另⼀个例⼦,可以先猜猜是什么类型。

a = 0.14
b = 3.14
c = b - a # c=3.0

这⾥⾯变量c还是⼀个浮点型,它的值是3.0,可以得出⼀个结论,只要有浮点数参与的运算,它的结果肯定也是浮点数。

1.字符串

我们在Hello world例⼦中使⽤的就是字符串类型a = "Hello world"
当如果字符串含有特殊字符,⽐如双引号,我们可以加⼀个 \ 反斜杠来进⾏转义。

print("Buddha: \"What we think, we become.\"")
# 输出的结果是:Buddha: "What we think, we become."

定义字符串时使⽤的都是双引号或单引号,其实Python也⽀持。

a = "Hello"
b = 'world'
print(a, b)
# 输出的结果仍然是Hello world

对字符中的字符串进⾏转义了,这样看起来清爽了很多。

print('haha: "how are you"')

定义字符串⽐较⻓,超出了⼀⾏的⻓度,使⽤⼀个反斜杠""来连接多⾏:

msg = "This's a very long long long \
long long story"
print(msg)

上⾯的代码在输出的时候还是会显示为⼀整⾏。如果说还有更⻓的字符串,类似⼀整段话,我们可以使⽤三引号
msg = “”" it a long long long story “”"
print(msg)
当然,上⾯的双引号也可以⽤单引号代替。

2.布尔值(boolean, bool)

布尔值: True 和 False,True-真,False-假,⼀般是⽤来做条件判断。True和False是关键字,看起来,布尔值只有两个

3.空值 None

空值None它代表空值,表示“什么都没有”,None同时也是关键字。None的⽤处有很多,⽐如说你想定义⼀个变量,但⼀时还没想好给它赋什么值,甚⾄连它⽤什么类型也没决定好,可以先⽤None

temp = None
print(temp)

None被输出的时候显示为⼀个字符串"None"

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

memblock内存分配器

一、简述 memblock 是 Linux 内核中的一个内存管理子系统,主要用于在系统启动早期阶段管理物理内存。它在内核初始化期间负责管理内存,直到更复杂的内存管理子系统(如伙伴系统)接管。 二、工作原理 初始化:在内核启…

【C++滑动窗口】1248. 统计「优美子数组」|1623

本文涉及的基础知识点 C算法:滑动窗口及双指针总结 LeetCode1248. 统计「优美子数组」 给你一个整数数组 nums 和一个整数 k。如果某个连续子数组中恰好有 k 个奇数数字,我们就认为这个子数组是「优美子数组」。 请返回这个数组中 「优美子数组」 的数…

⽂件内容的读写

文件 InputStream (字节流读出 抽象类) InputStream 只是⼀个抽象类,要使⽤还需要具体的实现类 FileInputStream(字节流读出) OutputStream(字节流写入) Reader(字符流读入&#xff…

FreeRTOS消息队列实验与出现的问题

目录 实验名字:队列操作实验 1、实验目的 2、实验设计 3、实验工程 4、实验程序与分析 ●任务设置 ● 其他应用函数 ● main()函数 ● 任务函数 ●中断初始化及处理过程 5.程序运行结果分析 6.进行实验移植时所遇到的问题 1.项目中mymalloc等函数缺少 …

el-cascader 使用笔记

1.效果 2.官网 https://element.eleme.cn/#/zh-CN/component/cascader 3.动态加载&#xff08;官网&#xff09; <el-cascader :props"props"></el-cascader><script>let id 0;export default {data() {return {props: {lazy: true,lazyLoad (…

Linux之进程概念(2)

Linux之进程概念&#xff08;2&#xff09; 孤儿进程 父进程如果提前退出&#xff0c;那么子进程后退出&#xff0c;进入Z之后&#xff0c;那该如何处理呢&#xff1f; 父进程先退出&#xff0c;子进程就称之为“孤儿进程” 孤儿进程被1号init进程领养&#xff0c;当然要有in…

1+X应急响应(网络)日志分析:

日志分析&#xff1a; Web日志分析&#xff1a; http协议&#xff1a; http版本演变&#xff1a; http协议工作原理&#xff1a; http协议的特点&#xff1a; http请求报文&#xff1a; http请求方法&#xff1a; http响应报文&#xff1a; UserId&#xff1a;注册网站的序列号…

go-zero(二) api语法和goctl应用

go-zero api语法和goctl应用 在实际开发中&#xff0c;我们更倾向于使用 goctl 来快速生成代码。 goctl 可以根据 api快速生成代码模板&#xff0c;包括模型、逻辑、处理器、路由等&#xff0c;大幅提高开发效率。 一、构建api demo 现在我们通过 goctl 创建一个最小化的 HT…

计算机编程中的设计模式及其在简化复杂系统设计中的应用

&#x1f493; 博客主页&#xff1a;瑕疵的CSDN主页 &#x1f4dd; Gitee主页&#xff1a;瑕疵的gitee主页 ⏩ 文章专栏&#xff1a;《热点资讯》 计算机编程中的设计模式及其在简化复杂系统设计中的应用 计算机编程中的设计模式及其在简化复杂系统设计中的应用 计算机编程中的…

latex中,两个相邻的表格,怎样留一定的空白

目录 问题描述 问题解决 问题描述 在使用latex写论文时&#xff0c;经常表格需要置顶写&#xff0c;则会出现两个表格连在一起的情况。下一个表名容易与上面的横线相连&#xff0c;如何通过明令&#xff0c;留出一定的空白。 问题解决 在第二个表格的 \centering命令之后…

leetcode01——合并两个有序数组

0.本题学到的知识 1.python的操作中&#xff0c;哪些是在原数据上进行操作的&#xff1f; 新开辟的行为&#xff1a;list1list1[m:n] 原数据&#xff1a;list1[a:b]list1[m:n] 新开辟&#xff1a;list1list1list2 原数据&#xff1a;list1.append(list2[i]); list1.extend(list…

深度学习的艺术:揭秘卷积神经网络(CNN)的神秘面纱

深度学习的艺术&#xff1a;揭秘卷积神经网络&#xff08;CNN&#xff09;的神秘面纱 一、CNN的构成要素二、CNN的工作流程三、CNN的应用领域四、CNN的优势与局限 #引言&#xff1a; 在人工智能的璀璨星空中&#xff0c;卷积神经网络&#xff08;CNN&#xff09;如同一颗耀眼的…

Linux高阶——1116—环形队列生产者消费者

目录 1、环形队列 2、生产者消费者 环形队列数组实现代码 成功截图 1、环形队列 相比于线性队列&#xff0c;环形队列可以有效避免访问越界问题&#xff0c;使用下标访问队列元素时&#xff0c;到达末尾后下标归0&#xff0c;返回起始位置&#xff0c;使用下标运算即可 a…

学习大数据DAY61 宽表加工

目录 模型设计 加工宽表 任务调度&#xff1a; 大表 - 把很多数据整合起来 方便后续的明细查询和指标计算 模型设计 设计 建模 设计: excel 文档去编写 建模: 使用建模工具 PowerDesigner Navicat 在线画图工具... 把表结构给绘 制出来 共享\项目课工具\pd 加工宽表 数…

DBeaver MACOS 安装 并连接到docker安装的mysql

官网下载&#xff1a;Download | DBeaver Community 网盘下载&#xff1a;链接: https://pan.baidu.com/s/15fAhbflHO-AGc-uAnc3Rjw?pwdbrz9 提取码: brz9 下载驱动 连接测试 报错 null, message from server: "Host 172.17.0.1 is not allowed to connect to this M…

24首届数证杯(流量分析部分)

目录 流量分析 流量分析 1、分析网络流量包检材&#xff0c;写出抓取该流量包时所花费的秒数?(填写数字&#xff0c;答案格式:10) 3504相加即可 2、分析网络流量包检材&#xff0c;抓取该流量包时使用计算机操作系统的build版本是多少? 23F793、分析网络流量包检材&#x…

云服务器ECS经济型e实例和通用算力u1实例有啥区别?

阿里云服务器ECS经济型e实例怎么样&#xff1f;对比ECS通用算力型u1实例哪个更好&#xff1f;u1实例更好。阿里云服务器网aliyunfuwuqi.com二者均为云服务器ECS的实例规格&#xff0c;e实例是共享型云服务器&#xff0c;u1实例是独享型云服务器&#xff0c;何为共享&#xff1f…

QT中使用图表之QChart绘制柱状图

绘制条形&#xff08;柱状&#xff09;图&#xff0c;系列选择条形系列QBarSeries x轴选择条形图的种类轴QBarCategoryAxis 1、创建图表视图 //1、创建图表视图 QChartView * view new QChartView(this); //开启抗锯齿 view -> setRenderHint(QPainter::Antialiasing); …

Essential Cell Biology--Fifth Edition--Chapter one (8)

1.1.4.6 The Cytoskeleton [细胞骨架] Is Responsible for Directed Cell Movements 细胞质基液不仅仅是一种无结构的化学物质和细胞器的混合物[soup]。在电子显微镜下&#xff0c;我们可以看到真核细胞的细胞质基液是由长而细的丝交叉而成的。通常[Frequently]&#xff0c;可…

【Linux】守护进程

目录 进程组 会话 作业控制 实现守护进程 我们在写完一些网络服务后&#xff0c;如果想让这个服务一直在云服务器的后台运行着&#xff0c;那该如何实现呢&#xff1f;其实就用到了这篇博客要讲的守护进程 进程组 我们首先需要了解进程组的概念&#xff0c;其实sleep 1000这…