当前位置: 首页 > article >正文

pyhton基础【2】基本语法

一. 注释

单行注释

以#开头,#右边的所有的内容当做说明,起辅助说明作用

# 我是一个单行注释
print('Hello') 

多行注释

"""
在三引号中的注释被称之为多行注释
可以写很多行的功能说明
"""
二. 交互模式

终端输入代码

1. 打开终端

2. 输入python(注意全是小写字母),然后回车

代码补全-ipython

ipython提供了代码补全,注释信息输出等功能

# 使用前需要先下载安装
pip install ipython# 开启ipython交互模式
ipython
三. 常量与变量

常量:固定不变的量,就是常量;就是一个值,至于这个值是整数100,还是小数3.14甚至是其它的类型都行

6699  # 6699就是一个常量
print(100)  # 这个100就是常量
print(3.1415926)  # 3.1415926也是一个常量print(100 + 200 + 300)
print(3.14 * 10 * 10)  # 计算半径为10的 圆的面积

变量:一个可以变化的量,就是变量;就是一个可以存储数据的空间;如果在程序中需要把两个数据,或者多个数据进行求和的话,那么就需要把这些数据先存储起来,然后把它们累加起来即可,存储一个数据,需要一个叫做变量的东西;程序就是用来处理数据的,而变量就是用来存储数据的

num1 = 100
num2 = 200
result = num1 + num2  # 将变量num1中的值 加上 num2中的值再给result变量
四. 数据类型

数据类型

具体实现

数字类型

intlongfloatcomplex

布尔类型

TrueFalse

字符串类型

str

列表类型

list

元组类型

tuple

字典类型

dict

集合类型

set

检查数据类型

在python中,只要有数据,那么一定有它的数据类型,可以使用type(常量或者变量),来查看数据类型

print(type(100))  # 先用type检查100的类型,然后用print输出这个信息
print(type(3.14))
print(type("hello world"))
运行结果:
<class 'int'>
<class 'float'>
<class 'str'>说明:
数值100的类型是int即整型
数值3.14的类型是float即浮点型
数值"hello world"的类型是str即字符串型
五. 标识符与关键字

 标识符

标识符定义:在程序中定义的一些符号和名称。例如变量名 、函数名、类名等,可以快速找到我们用的数据或者功能。

 例如:

age = 18

在上述变量定义时,age就是变量的名字,实际上它就是标识符,如果在程序中需要获取18,那么就使用age这个标识符就可以了

标识符的规则

标识符由字母、下划线和数字组成,且数字不能开头

Python中的标识符是区分大小写的!!!

命名规则

1. 见名知意
        起一个有意义的名字,尽量做到看一眼就知道是什么意思(提高代码可 读性) 比如: 名字就定义为 name, 定义学生用student 

2. 驼峰命名法 
        小驼峰式命名法: 第一个单词以小写字母开始,第二个单词的首字母大写。例如:myName、aDog
        大驼峰式命名法: 每一个单字的首字母都采用大写字母。例如:FirstName、LastName
3. 下划线命名法
        用_来连接所有的单词,比如send_msg 

注意 

● Python中类名用大驼峰命名法
● 全局变量都是大写字母,且单词之间用下划线链接的方式,例如:SUM_SCORE

关键字

上面的知识我们知道了什么是标识符,标识符分为两个部分:

● 一部分是Python解释器自己用了,用来实现某些特殊功能,像if

 ● 另外一部分是留给开发者自己用,像我们定义的年龄age

总结来说:Python中具有特殊含义的英文单词就是所谓的关键字

注意:关键字是python已经在使用的特殊含义的单词,所以不允许开发者自己定义和关键字相同的名称的标识符

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

可以在Python交互模式中通过以下命令进行查看关键字

>>> import keyword
>>> keyword.kwlist
六. 输出

在Python中,如果我们需要打印出一些数据以便能够知道数据的大少,此时用print即可,会在终端中打印出对应的数据

#输出变量的值
print(变量名)  # 直接将已经定义的变量名放到()中即可、
age = 18
print(age)#输出常量
print(常量)  # 可以直接将常量放到()中
print(100)#输出表达式的结果
print(表达式)  # 直接将表达式放到()中
print(100 + 200 + 300)  # 此时输出的是表达式计算的结果即600,而不是100+200+300# 如果就是想要输出100+200+300而不是600,可以将它们用双引号包裹起来,表位字符串
print("100 + 200 + 300")#如果想要一次性输出多个数据,可以用英文逗号,进行间隔
print(100, 200, 300)  # 此时会输出 100 200 300
print("hello", 200, "abc")  # 此时会输出 hello 200 abc
print(100 + 200 + 300, 500)  # 此时会输出 600 500a = 100
b = 200
c = 300
print(a, b, c)  # 此时会输出100 200 300

格式化输出

在程序中,看到了%这样的操作符,这就是Python中的格式化输出。

age = 18
name = "小明"
email = "aaaa@sina.com"  # 这是我的真实的邮箱地址,可以联系哦
print("我的姓名是%s, 年龄是%d, 邮箱地址是%s" % (name, age, email))

常用的格式符号

格式符号

转换

%c

字符

%s

字符串

%d

有符号十进制整数

%u

无符号十进制整数

%o

八进制整数

%x

十六进制整数(小写字母0x

%X

十六进制整数(大写字母0X

%f

浮点数

%e

科学计数法(小写'e'

%E

科学计数法(大写“E”

%g

%f%e的简写

%G

%f%E的简写

常用的是%d输出整数,%f输出浮点数,%s输出字符串,其他的用的很少。

转义字符

print("abcnABC");
print("abc\nABC");
输出结果是:
abcnABC
abc
ABC

有些特殊的字母像n,如果在前面加上了一个反斜杠\,那么此时\n就有了特殊功能:换行

除了\n表示换行以外,常用的还有\t表示一个tab键的间距。

print("abc\tABC")
输出的效果:
abc    ABC
七.输入

在Python中,获取键盘输入的数据的方法是采用input函数。

password = input("请输入密码:")
print('您刚刚输入的密码是:%s' % password)

注意:
● input()的小括号中放入的是提示信息,用来在获取数据之前给用户的一个简单提示

● input()在从键盘获取了数据以后,会赋值给等号左边的变量中

● input()会把用户输入的任何值都作为字符串来对待

如果一个程序需要获取多个数据,例如想要获取用户名以及密码,那么此时就要用两个input

name = input("请输入用户名:")
password = input("请输入密码:")print("您的用户名是:%s" % name)
print("您的密码是:%s" % password)
九.运算符

算数运算符

使用a=10, b=20为例进行计算

运算符

描述

实例

+

两个对象相加 a + b,输出结果30

-

得到负数或是一个数减去另一个数a - b,输出结果-10

*

两个数相乘或是返回一个被重复若干次的字符串 a * b,输出结果200

/

b / a,输出结果2

//

取整除

返回商的整数部分 9//2,输出结果49.0//2.0,输出结果4.0

%

取余

返回除法的余数 b % a,输出结果0

**

指数

2**323次方, 输出结果8

注意:

● 混合运算时,优先级顺序为: **高于*、/、%、//高于+、-,为了避免歧义,建议使用()来处理运算符优先级。

● 不同类型的数字在进行混合运算时,整数将会转换成浮点数进行运算

>>> 10 + 5.5 * 2
21.0
>>> 10 + (5.5 * 2)
21.0

赋值运算符

运算符

描述

实例

=

赋值运算符

=号右边的结果赋给左边的变量,如num = 1 + 2 * 3,结果num的值为7

# 单个变量赋值
>>> num = 10
>>> num
10# 多个变量赋值
>>> num1, num2, f1, str1 = 100, 200, 3.14, "hello"
>>> num1
100
>>> num2
200
>>> f1
3.14
>>> str1
"hello"

复合赋值运算符

运算符

描述

实例

+=

加法赋值运算符

c += a等效于c = c + a

-=

减法赋值运算符

c -= a等效于c = c - a

*=

乘法赋值运算符

c *= a等效于c = c * a

/=

除法赋值运算符

c /= a等效于c = c / a

%=

取模赋值运算符

c %= a等效于c = c % a

**=

幂赋值运算符

c **= a等效于c = c ** a

//=

取整除赋值运算符

c //= a等效于 c = c // a

相关文章:

pyhton基础【2】基本语法

一. 注释 单行注释 以#开头&#xff0c;#右边的所有的内容当做说明&#xff0c;起辅助说明作用 # 我是一个单行注释 print(Hello) 多行注释 """ 在三引号中的注释被称之为多行注释 可以写很多行的功能说明 """ 二. 交互模式 终端输入代码…...

python数据结构-列表详解

Python中的列表(List)是一种序列类型的数据结构&#xff0c;它支持元素的动态添加和删除&#xff0c;可以容纳任意类型的数据&#xff0c;包括数字、字符串、甚至是其他列表或其他复杂数据结构。列表因其灵活性和广泛的应用场景&#xff0c;成为Python中最常用的数据结构之一。…...

本地环境下 前端突然端口占用问题 针对vscode

1.问题背景 本地运行前端代码&#xff0c;虚拟机中使用nginx反向代理。两者都使用vscode进行开发。后端使用vscode远程连接。在前端发起一次接口请求后&#xff0c;后端会产生新的监听端口&#xff0c;出现如下图的提示情况。随后前端刷新&#xff0c;甚至无法正常显示界面。 …...

flutter 项目调试、flutter run --debug调试模式 devtools界面说明

Flutter DevTools 网页界面说明 1. 顶部导航栏 Inspector&#xff1a;查看和调试 Widget 树&#xff0c;实时定位 UI 问题。Performance-- 性能分析面板&#xff0c;查看帧率、CPU 和 GPU 使用情况&#xff0c;识别卡顿和性能瓶颈。Memory-- 内存使用和对象分配分析&#xff…...

在局域网(LAN)中查看设备的 IP 地址

在局域网&#xff08;LAN&#xff09;中查看设备的 IP 地址&#xff0c;可以使用以下几种方法&#xff1a; 方法 1&#xff1a;使用 ipconfig&#xff08;Windows&#xff09; 1. 打开 CMD&#xff1a; 按 Win R&#xff0c;输入 cmd&#xff0c;回车。 2. 输入命令&#…...

Axure 基本用法学习笔记

一、元件操作基础 1. 可见性控制 隐藏/显示&#xff1a;可以设置元件的可见性&#xff0c;使元件在特定条件下隐藏或可见 应用场景&#xff1a;创建动态交互效果&#xff0c;如点击按钮显示隐藏内容 2. 层级管理 层级概念&#xff1a;元件有上下层关系&#xff0c;上层元件…...

使用 Hyperlane 实现 WebSocket广播

使用 Hyperlane 实现 WebSocket广播 hyperlane 框架原生支持 WebSocket 协议&#xff0c;开发者无需关心协议升级过程&#xff0c;即可通过统一接口处理 WebSocket 请求。本文将介绍如何使用 hyperlane 实现服务端的单点发送与广播发送功能&#xff0c;以及如何配套实现一个简…...

SQL每日一题(5)

前言&#xff1a;五更&#xff01;五更琉璃&#xff01;不对&#xff01;是&#xff0c;五更佩可&#xff01; 原始数据&#xff1a; new_hires reasonother_column1other_column2校园招聘信息 11社会招聘信息 22内部推荐信息 33猎头推荐信息 44校园招聘信息 55社会招聘信息…...

git提交通用规范

提交类型 类型说明feat新增功能或特性fix修复Bugdocs文档更新&#xff08;README、CHANGELOG、注释等&#xff09;style代码样式调整&#xff08;空格、分号、格式等&#xff0c;不改变逻辑&#xff09;refactor代码重构&#xff08;既非新增功能&#xff0c;也非修复Bug的代码…...

C++ - 仿 RabbitMQ 实现消息队列(3)(详解使用muduo库)

C - 仿 RabbitMQ 实现消息队列&#xff08;3&#xff09;&#xff08;详解使用muduo库&#xff09; muduo库的基层原理核心概念总结&#xff1a;通俗例子&#xff1a;餐厅模型优势体现典型场景 muduo库中的主要类EventloopMuduo 的 EventLoop 核心解析1. 核心机制&#xff1a;事…...

docker部署XTdrone

目录 一、前置准备 二、依赖安装 三、ros安装 四、gazebo安装 五、mavros安装 六、PX4的配置 七、Xtdrone源码下载 八、xtdrone与gazebo&#xff08;实际上应该是第四步之后做这件事&#xff09; 九、键盘控制 参考链接&#xff1a;仿真平台基础配置 语雀 一、前置准…...

图解 | 大模型智能体LLM Agents

文章目录 正文1. 存储 Memory1.1 短期记忆 Short-Term Memory1.1.1 模型的上下文窗口1.1.2 对话历史1.1.3 总结对话历史 1.2 长期记忆Long-term Memory 2. 工具Tools2.1 工具的类型2.2 function calling2.3 Toolformer2.3.1 大模型调研工具的过程2.3.2 生成工具调用数据集 2.4 …...

Lambda表达式的方法引用详解

Lambda表达式的方法引用详解 1. 方法引用的概念与作用 定义:方法引用(Method Reference)是Lambda表达式的一种简化写法,允许直接通过方法名引用已有的方法。核心目的:减少冗余代码,提升可读性,尤其在Lambda仅调用一个现有方法时。语法符号:双冒号 ::。2. 方法引用的四种…...

echarts设置标线和最大值最小值

echarts设置标线和最大值最小值 基本ECharts图表初始化配置 设置动态的y轴范围&#xff08;min/max值&#xff09; 通过markPoint标记最大值和最小值点 使用markLine添加水平参考线 配置双y轴图表 自定义标记点和线的样式&#xff08;颜色、符号等&#xff09; 响应式调整图表大…...

gcc编译构建流程

0. 项目结构 /home/pi/test/ ├── src/ │ ├── add/ │ │ ├── add.cpp │ │ ├── add.h │ └── log/ │ ├── log.cpp │ ├── log.h │ ├── data.h ├── main.cppmain.cpp代码 // main.cpp #include "log.h&quo…...

Maven 中央仓库操作指南

Maven 中央仓库操作指南 登录注册 在 Maven Central 登录&#xff08;注册&#xff09;账号。 添加命名空间 注册 通过右上角用户菜单跳转到命名空间管理页面&#xff1a; 注册命名空间&#xff1a; 填入你拥有的域名并注册&#xff1a; 刚提交的命名空间状态是Unverified…...

BUUCTF——RCE ME

BUUCTF——RCE ME 进入靶场 <?php error_reporting(0); if(isset($_GET[code])){$code$_GET[code];if(strlen($code)>40){die("This is too Long.");}if(preg_match("/[A-Za-z0-9]/",$code)){die("NO.");}eval($code); } else{highlight…...

clickhouse-1-特性及docker化安装

clickhouse-1-特性及docker化安装 1.​​核心特性​​1.1.列式存储与高效压缩​​1.2.​​向量化执行引擎​​1.3.分布式架构与高可用性​​1.4.多样化的表引擎​​1.5.实时处理能力​​2.安装2.1 拉取镜像2.2 创建容器3.连接4.使用4.1.创建数据库5.其他5.1 primary key5.2 ENG…...

Docker核心笔记

一、概述 1、架构 Docker容器基于镜像运行,容器共享宿主机的内核,不会加载额外内核,通过Namespaces(环境隔离)和Cgroups(资源控制)实现隔离,Cgroups会限容器使用资源并控制优先级和统计数据。隔离后的容器仅包含应用所需的用户态依赖 2、安装 安装先卸载再安装,使用的yum…...

log日志最佳实践

log日志最佳实践 1、占位符的使用2、延迟计算 1、占位符的使用 在进行日志打印的时候&#xff0c;推荐使用占位符进行字符串打印&#xff0c;而不是直接使用字符串拼接。原因&#xff1a; 这样可以避免不必要的字符串拼接。使用占位符时&#xff0c;实际字符串拼接由日志框架…...

FreeRTOS--消息队列

一、简介 消息队列是FreeRTOS中用于任务与任务或任务与中断之间数据交换的一种机制&#xff0c;采用FIFO&#xff08;先进先出&#xff09;方式管理数据&#xff0c;也可以采用LIFO&#xff08;后进先出&#xff09;方式。有点类似全局变量。 1.1 那为什么不直接使用全局变量&a…...

三步快速部署一个本地Windows/Linux大语言模型ChatGLM(环境配置+权重下载+运行)

前言&#xff1a; 最近刚拿到实验室一个装了3张3090显卡的服务器账号&#xff0c;感觉不用来霍霍有点浪费&#xff0c;于是有了部署一个大语言模型的想法&#xff0c;除去下载权重和传文件到服务器上可能也就用了十分钟不到&#xff08;这下看懂为啥python受众现在这么广了&…...

深入解析Spring Boot与Redis的缓存集成实践

深入解析Spring Boot与Redis的缓存集成实践 引言 在现代Web应用开发中&#xff0c;缓存技术是提升系统性能的重要手段之一。Redis作为一种高性能的内存数据库&#xff0c;广泛应用于缓存场景。本文将详细介绍如何在Spring Boot项目中集成Redis&#xff0c;并探讨其在实际开发…...

leetcode105.从中序与前序遍历序列构造二叉树:前序定根与中序分治的递归重建术

一、题目深度解析与核心挑战 在二叉树的重建问题中&#xff0c;"从中序与前序遍历序列构造二叉树"是一道考察递归分治思想的经典题目。题目要求我们根据一棵二叉树的前序遍历序列和中序遍历序列&#xff0c;重建出该二叉树的原始结构。这道题的核心难点在于如何利用…...

Python二级考试

目录 一、核心知识模块 1. 程序结构 2. 循环结构 3. 组合数据类型 4. 函数与模块 二、重点算法 1. 排序算法 2. 查找算法 三、文件操作 1. 基础文件处理 四、备考建议 五、典型易错点 以下是Python二级考试的复习要点整理&#xff0c;分为知识模块和备考建议&#…...

DeepSeek联网Google搜索引擎

目录&#xff1a; 1、使用背景2、实现代码3、Gradio 的 yield 机制 1、使用背景 比如所有易建联是什么时候退役的&#xff1f;使用大模型对这种实事回答不准确&#xff0c;需要通过联网搜索处理。 正确答案应该是2023年8月29日退役。 2、实现代码 # import gradio as gr# d…...

理论物理:为什么在极低温(接近绝对零度)时,经典理论失效?

经典理论应该是指经典力学和经典统计物理吧,比如牛顿力学、麦克斯韦-玻尔兹曼分布这些。而到了接近绝对零度的时候,物质的状态会发生什么变化呢?比如说超流性、超导性,或者玻色-爱因斯坦凝聚这些现象,这些在经典理论里好像没法解释。 因为在极低温下,粒子的热运动减弱,…...

奈雪小程序任务脚本

功能概述 该脚本用于自动完成奈雪点单小程序的每日任务&#xff0c;包括&#xff1a; 自动检测 Token 有效性自动签到&#xff08;如果未签到&#xff09;获取用户基础信息&#xff08;昵称、手机号&#xff09;查询当前奈雪币余额记录连续签到天数支持多账号执行&#xff0c…...

上海医日健集团物联网专利技术领跑智慧药房赛道

在智慧医疗蓬勃发展的浪潮中&#xff0c;上海医日健集团凭借其卓越的创新能力与强大的技术实力&#xff0c;在智慧药房领域崭露头角。集团自主研发的物联网专利技术&#xff0c;正以前所未有的优势&#xff0c;重塑智慧药房运营模式&#xff0c;引领行业迈向新的发展高度。 上…...

基于Java+MySQL实现(Web)图书借阅管理系统

图书借阅管理系统(前后台) 1 需求分析 图书借阅管理系统是模拟学校图书馆实现的一个具有前后台的 Web 系统.对于读者,能够提供全文检索,个性化推荐,借阅等功能.对于管理员,能够提供可视化数据分析,信息管理等功能. 2 技术栈 前端: Layui,jQuery,echarts 后端:Spring Boot,…...