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.rhkb.cn/news/473651.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

3步实现贪吃蛇

方法很简单,打开页面,复制,粘贴 一.整体思维架构 我们根据游戏的开始,运行,结束,将整个游戏划分成三个部分。在每个部分下面又划分出多个功能,接下来我们就根据模块一一实现功能。 二.Gamesta…

STL序列式容器之list

相较于vector的连续性空间&#xff0c;list相对比较复杂&#xff1b;list内部使用了双向环形链表的方式对数据进行存储&#xff1b;list在增加元素时&#xff0c;采用了精准的方式分配一片空间对数据及附加指针等信息进行存储&#xff1b; list节点定义如下 template<clas…

【论文模型复现】深度学习、地质流体识别、交叉学科融合?什么情况,让我们来看看

文献&#xff1a;蓝茜茜,张逸伦,康志宏.基于深度学习的复杂储层流体性质测井识别——以车排子油田某井区为例[J].科学技术与工程,2020,20(29):11923-11930. 本文目录 一、前言二、文献阅读-基于深度学习的复杂储层流体性质测井识别2.1 摘要2.2 当前研究不足2.3 本文创新2.4 论文…

(一)- DRM架构

一&#xff0c;DRM简介 linux内核中包含两类图形显示设备驱动框架&#xff1a; FB设备&#xff1a;Framebuffer图形显示框架; DRM&#xff1a;直接渲染管理器&#xff08;Direct Rendering Manager&#xff09;&#xff0c;是linux目前主流的图形显示框架&#xff1b; 1&am…

Java基础-Java中的常用类(上)

(创作不易&#xff0c;感谢有你&#xff0c;你的支持&#xff0c;就是我前行的最大动力&#xff0c;如果看完对你有帮助&#xff0c;请留下您的足迹&#xff09; 目录 String类 创建字符串 字符串长度 连接字符串 创建格式化字符串 String 方法 System类 常用方法 方…

Istio分布式链路监控搭建:Jaeger与Zipkin

分布式追踪定义 分布式追踪是一种用来跟踪分布式系统中请求的方法&#xff0c;它可以帮助用户更好地理解、控制和优化分布式系统。分布式追踪中用到了两个概念&#xff1a;TraceID 和 SpanID。 TraceID 是一个全局唯一的 ID&#xff0c;用来标识一个请求的追踪信息。一个请求…

探索Python网络请求新纪元:httpx库的崛起

文章目录 **探索Python网络请求新纪元&#xff1a;httpx库的崛起**第一部分&#xff1a;背景介绍第二部分&#xff1a;httpx库是什么&#xff1f;第三部分&#xff1a;如何安装httpx库&#xff1f;第四部分&#xff1a;简单的库函数使用方法1. 发送GET请求2. 发送POST请求3. 超…

vue使用List.reduce实现统计

需要对集合的某些元素的值进行计算时&#xff0c;可以在计算属性中使用forEach方法 1.语法&#xff1a;集合.reduce ( ( 定义阶段性累加后的结果 , 定义遍历的每一项 ) > 定义每一项求和逻辑执行后的返回结果 , 定义起始值 ) 2、简单使用场景&#xff1a;例如下面…

层归一化和批归一化

层归一化是针对某一样本的所有特征&#xff0c;批归一化是针对所有样本的某一特征。 计算公式&#xff1a;&#xff08;当前值 - 均值&#xff09;/ 标准差。 作用&#xff1a;缓解梯度消失和梯度爆炸的问题&#xff0c;并提高网络的泛化性能。 为什么Transform和BERT中使用层归…

vueRouter路由切换时实现页面子元素动画效果, 左右两侧滑入滑出效果

说明 vue路由切换时&#xff0c;当前页面左侧和右侧容器分别从两侧滑出&#xff0c;新页面左右分别从两侧滑入 效果展示 路由切换-滑入滑出效果 难点和踩坑 现路由和新路由始终存在一个页面根容器&#xff0c;通过<transition>组件&#xff0c;效果只能对页面根容器有效…

docker 安装之 windows安装

文章目录 1: 在Windows安装Docker报19044版本错误的时候&#xff0c;请大家下载4.24.1之前的版本&#xff08;含4.24.1&#xff09;2: Desktop-WSL kernel version too low3: docker-compose 安装 (v2.21.0)4: 配置镜像源 1: 在Windows安装Docker报19044版本错误的时候&#xf…

【GPTs】Gif-PT:DALL·E制作创意动图与精灵动画

博客主页&#xff1a; [小ᶻZ࿆] 本文专栏: AIGC | GPTs应用实例 文章目录 &#x1f4af;GPTs指令&#x1f4af;前言&#x1f4af;Gif-PT主要功能适用场景优点缺点 &#x1f4af;小结 &#x1f4af;GPTs指令 中文翻译&#xff1a; 使用Dalle生成用户请求的精灵图动画&#…

FastGPT部署通义千问Qwen和智谱glm模型|OneAPI配置免费的第三方API

继这篇博客之后 从零开始FastGPT本地部署|Windows 有同学问&#xff0c;不想在多个平台申请API-Key&#xff0c;不好管理且要付费&#xff0c;有木有白嫖方案呀&#xff1f; 答&#xff1a;有啊。用硅基流动。 注册方法看这篇 【1024送福利】硅基流动送2000万token啦&#xff0…

JsonCpp

参考文档&#xff1a;https://zhuanlan.zhihu.com/p/374319504 json是一种轻量级数据交换格式&#xff0c;易于阅读和编写&#xff0c;也易于机器解析和生成。使用json格式可以方便地在各个系统之间传递数据。在c中&#xff0c;有许多开源的json库可以进行json的处理。比如&am…

7.揭秘C语言输入输出内幕:printf与scanf的深度剖析

揭秘C语言输入输出内幕&#xff1a;printf与scanf的深度剖析 C语言往期系列文章目录 往期回顾&#xff1a; VS 2022 社区版C语言的安装教程&#xff0c;不要再卡在下载0B/s啦C语言入门&#xff1a;解锁基础概念&#xff0c;动手实现首个C程序C语言概念之旅&#xff1a;解锁关…

XXL-JOB相关面试题

分布式任务调度-xxl-job 任务量大&#xff0c;分片执行 定义cron表达式灵活 定时任务失败了&#xff0c;重试和统计 xxl-job路由策略有哪些&#xff1f; 轮询 故障转移 分片广播:**广播触发对应的集群中所有机器执行一次任务,同时系统自动传递分片参数,**可以根据分片参数开发…

华东师范大学数学分析第五版PDF习题答案上册及下册

“数学分析”是数学专业最重要的一门基础课程&#xff0c;也是报考数学类专业硕士研究生的专业考试科目。为了帮助、指导广大读者学好这门课程&#xff0c;编者编写了与华东师范大学数学科学学院主编的《数学分析》(第五版)配套的辅导用书&#xff0c;以帮助读者加深对基本概念…

MATLAB实现GARCH(广义自回归条件异方差)模型计算VaR(Value at Risk)

MATLAB实现GARCH(广义自回归条件异方差)模型计算VaR(Value at Risk) 1.计算模型介绍 使用GARCH&#xff08;广义自回归条件异方差&#xff09;模型计算VaR&#xff08;风险价值&#xff09;时&#xff0c;方差法是一个常用的方法。GARCH模型能够捕捉到金融时间序列数据中的波…

基于YOLOv8深度学习的智慧课堂学生专注度检测系统(PyQt5界面+数据集+训练代码)

本研究提出了一种基于YOLOv8深度学习的智慧课堂学生专注度检测系统&#xff0c;旨在实现对课堂中学生专注度的实时分析与评估。随着智慧教育的快速发展&#xff0c;学生的课堂表现和专注度成为评估学习效果的重要因素之一。然而&#xff0c;传统的专注度评估方法往往依赖于主观…

如何在 Ubuntu 上安装 Emby 媒体服务器

Emby 是一个开源的媒体服务器解决方案&#xff0c;它能让你整理、流媒体播放和分享你的个人媒体收藏&#xff0c;包括电影、音乐、电视节目和照片。Emby 帮你集中多媒体内容&#xff0c;让你无论在家还是在外都能轻松访问。它还支持转码&#xff0c;让你能够播放各种格式的内容…