超详解——深入详解Python基础语法——基础篇
目录
1 .语句和变量
变量赋值示例:
打印变量的值:
2. 语句折行
反斜杠折行示例:
使用括号自动折行:
3. 缩进规范
缩进示例:
4. 多重赋值(链式赋值)
多重赋值的应用:
5 .多元赋值
多元赋值的应用:
6. 增量赋值
增量赋值运算符示例:
7. 作用域和生命周期
示例:
8. Python关键字
查看关键字:
详细示例:
1 .语句和变量
在Python中,变量是用来存储数据的容器。与其他编程语言不同,Python中的变量不需要声明类型,可以直接赋值使用。Python的变量赋值是动态的,即可以在程序运行时根据赋予的值确定变量的类型。
变量赋值示例:
x = 10 # 整数
y = "Hello" # 字符串
z = 3.14 # 浮点数
在上述示例中,x
被赋值为整数 10
,y
被赋值为字符串 "Hello"
,z
被赋值为浮点数 3.14
。每条语句通常占据一行,可以包含一个变量赋值、打印语句或函数调用等。
打印变量的值:
print(x) # 输出 10
print(y) # 输出 Hello
print(z) # 输出 3.14
2. 语句折行
当一行代码过长时,可以使用反斜杠(\
)进行折行,以增加代码的可读性。
反斜杠折行示例:
total = item_one + \item_two + \item_three
在上述示例中,反斜杠表示下一行是当前行的继续,从而可以将一行代码分成多行书写,增强代码的可读性。
使用括号自动折行:
也可以使用括号来包含表达式,这样即使不使用反斜杠,代码也可以自动折行:
total = (item_one +item_two +item_three)
使用括号的方式更加推荐,因为它不需要依赖反斜杠,并且括号可以明确表达式的范围。
3. 缩进规范
Python使用缩进来表示代码块。这种缩进的方式与许多其他编程语言不同,在其他语言中通常使用花括号 {}
来表示代码块。
缩进示例:
if x > 0:print("Positive number")
else:print("Non-positive number")
在上述示例中,if
和 else
子句的代码块通过缩进来表示。每个代码块必须缩进相同的空格数量(通常使用四个空格)。如果缩进不一致,将会导致 IndentationError
。
4. 多重赋值(链式赋值)
在Python中,可以同时为多个变量赋值。例如:
a = b = c = 1
这表示变量 a
、b
和 c
都被赋值为 1
。
多重赋值的应用:
x = y = z = 0 # 初始化三个变量
多重赋值可以简化变量的初始化过程,使代码更加简洁。
5 .多元赋值
Python支持同时为多个变量赋值。例如:
a, b, c = 1, 2, "Hello"
这表示变量 a
被赋值为 1
,b
被赋值为 2
,c
被赋值为 "Hello"
。
多元赋值的应用:
x, y, z = 10, 20, 30
name, age, city = "Alice", 30, "New York"
多元赋值可以在一行代码中同时为多个变量赋值,使代码更加清晰。
6. 增量赋值
增量赋值运算符用于对变量进行自加、自减等操作。例如:
x = 5
x += 1 # 等价于 x = x + 1
print(x) # 输出 6
Python支持多种增量赋值运算符,包括 +=
, -=
, *=
, /=
, %=
, **=
, //=
, &=
, |=
, ^=
, <<=
, >>=
。
增量赋值运算符示例:
x = 10
x *= 2 # 等价于 x = x * 2
print(x) # 输出 20y = 15
y //= 3 # 等价于 y = y // 3
print(y) # 输出 5
7. 作用域和生命周期
变量的作用域分为局部变量和全局变量。局部变量在函数内部声明,生命周期仅限于函数内。全局变量在函数外声明,可以在整个程序中访问。
示例:
global_var = "I am global"def my_function():local_var = "I am local"print(local_var) # 访问局部变量my_function()
print(global_var) # 访问全局变量
# print(local_var) # 这将会报错,因为 local_var 是局部变量
在上述示例中,global_var
是全局变量,可以在函数内外访问。local_var
是局部变量,只能在函数内部访问。
8. Python关键字
Python有一组保留字,这些关键字在Python中有特定的含义,不能用作变量名。可以使用 keyword
模块查看所有关键字。
查看关键字:
import keyword
print(keyword.kwlist)
常见的Python关键字包括
if
,else
,while
,for
,break
,continue
,return
,def
,class
,import
,from
,try
,except
,finally
,with
,as
,lambda
,pass
,global
,nonlocal
,True
,False
,None
等。
详细示例:
# 使用 if 关键字
if x > 0:print("x is positive")
else:print("x is non-positive")# 使用 for 关键字
for i in range(5):print(i)# 使用 def 关键字定义函数
def greet(name):return f"Hello, {name}!"# 使用 import 关键字导入模块
import math
print(math.sqrt(16)) # 输出 4.0
相关文章:

超详解——深入详解Python基础语法——基础篇
目录 1 .语句和变量 变量赋值示例: 打印变量的值: 2. 语句折行 反斜杠折行示例: 使用括号自动折行: 3. 缩进规范 缩进示例: 4. 多重赋值(链式赋值) 多重赋值的应用: 5 .多…...
系统架构设计师【论文-2017年 试题2】: 论软件架构风格(包括写作要点和经典范文)
题目:论软件架构风格 (2017年 试题2) 软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。体系结构风格 定义一个系统家族,即一个体系结构定义一个词汇表和一组约束。词汇表中包含一些构件和 连接件类型ÿ…...
Spring Boot 事务传播机制详解
Spring Boot 事务传播机制详解 1. 事务传播机制概述 Spring Boot 中的事务传播机制用于处理多个事务方法之间相互调用时的事务行为,保证数据的完整性和一致性。当务传播机制定义了在调用一个事务方法时,当前事务该如何传播或传递。Spring Boot 中的事务…...
【机器学习】生成对抗网络 (Generative Adversarial Networks | GAN)
生成对抗网络 (Generative Adversarial Networks | GAN) 介绍 生成对抗网络 (Generative Adversarial Networks,简称GAN) 是一种强大的深度学习模型,用于生成具有逼真感的图像、音频和文本等内容。GAN 的核心理念是通过训练两个神经网络,生…...

[ADS信号完整性分析]深入理解IBIS AMI模型设计:从基础到实践
在高速数字设计领域,信号完整性(SI)分析对于确保系统性能至关重要。IBIS AMI(Algorithmic Model Interface)模型作为一种强大的工具,能够帮助设计师在系统层面上评估和优化SERDES(串行器/解串器…...

Plotly : 超好用的Python可视化工具
文章目录 安装:开始你的 Plotly 之旅基本折线图:简单却强大的起点带颜色的散点图:数据的多彩世界三维曲面图:探索数据的深度气泡图:让世界看到你的数据小提琴图:数据分布的优雅展现旭日图:分层数…...

Linux电话本的编写-shell脚本编写
该电话本可以实现以下功能 1.添加用户 2.查询用户 3.删除用户 4.展示用户 5.退出 代码展示: #!/bin/bash PHONEBOOKphonebook.txt function add_contact() { echo "Adding new contact..." read -p "Enter name: " name …...
蓝牙开发 基础知识
零、基础知识 0.1、Android 应用可通过 Bluetooth API 执行以下操作 扫描其他蓝牙设备查询本地蓝牙适配器的配对蓝牙设备建立 RFCOMM 通道通过服务发现连接到其他设备与其他设备进行双向数据传输管理多个连接 0.2、蓝牙进行通信的四大必需任务 设置蓝牙查找局部区域内的配对…...

QNX 7.0.0开发总结
1 QNX编译 1.1 基本概念 QNX可以直接使用Linux Makefile编译库和二进制,在Makefile文件中指定CCaarch64-unknown-nto-qnx7.0.0-g,或者CCx86_64-pc-nto-qnx7.0.0-g,保存退出后,运行source /qnx_sdk_path/qnxsdp-env.sh,…...

Golang使用讯飞星火AI接口
一、API申请 https://www.bilibili.com/video/BV1Yw411m7Rs/?spm_id_from333.337.search-card.all.click&vd_source707ec8983cc32e6e065d5496a7f79ee6 注册申请,需要在此页面获取appid、apisecret、apikey https://www.xfyun.cn/ https://console.xfyun.cn/ser…...
矫正儿童发音好帮手
《言语构音语音训练手册——下颌、唇部、舌部构音运动障碍》教辅书 儿童言语构音语音问题越来越受到家长的关注,大多数家长受到儿童说话晚、口齿不清、发音错误等问题的困扰,国外报道2岁儿童言语构音语音障碍达到17%,3岁达4%~7.5%࿰…...

wordpress主题导航主题v4.16.2哈哈版
1.下载授权接口源码onenav-auth-api-v2.zip ,在宝塔新建一个网站,域名为 auth.iotheme.cn,设置wordpress伪静态,申请ssl证书。将上面源码解压后上传到此网站根目录。 2. 在宝塔根目录etc下 hosts 中添加 127.0.0.1 auth.iotheme.…...
内存分布图
1.基本数据类型和常量存放在常量池中。 2.类的成员存放在堆中,如果成员是其他类对象也存放在堆中 3.数组和数组的内容放在堆中 4.类对象存放在栈中。 5.单独的对象存放在栈中。 6.引用数据类型存放在堆或栈中。 Java中对象到底存在堆中还是栈中_java对象在堆还…...
如何发布自己的NPM插件包?
安装 Node.js : 如果没有安装的,Nodejs下载安装:http://nodejs.cn/download/ 首先确保你已经安装了 Node.js 和 npm。你可以通过运行以下命令来检查是否已经安装: node -v npm -v初始化项目: 创建一个新的项目文件夹…...
计算广告读书杂记-待整理
不知不觉已经在字节干了两年多广告研发,也跳槽去了一家广告公司继续深耕,借着这个劲,重新读一遍《计算广告》这本书,并将一些重点概念进行记录。...

No module named _sqlite3解决方案
大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。喜欢通过博客创作的方式对所学的…...

防飞单,赢市场:售楼处客流统计管理新篇章
在竞争激烈的房地产市场中,售楼处作为楼盘销售的重要窗口,其管理效率和服务质量直接关系到楼盘的销售业绩和品牌形象。然而,传统的客户人数统计方式往往存在诸多不足,如数据不准确、统计效率低下等,这些问题给售楼处的…...

LeetCode:419. 甲板上的战舰(遍历 Java)
目录 419. 甲板上的战舰 题目描述: 实现代码与解析: 遍历 原理思路: 419. 甲板上的战舰 题目描述: 给你一个大小为 m x n 的矩阵 board 表示甲板,其中,每个单元格可以是一艘战舰 X 或者是一个空位 . &…...

【python】OpenCV—Blob Detection(11)
学习来自OpenCV基础(10)使用OpenCV进行Blob检测 文章目录 1、cv2.SimpleBlobDetector_create 中文文档2、默认 parameters3、配置 parameters附录——cv2.drawKeypoints 1、cv2.SimpleBlobDetector_create 中文文档 cv2.SimpleBlobDetector_create 是 O…...
【C++】 基础复习 | 数据类型,输入,输出流 scanf printf
文章目录 1 基本数据类型1.1 基本数据类型1.2 构造类型1.3 指针类型(Pointers) 2 基础输入输出2.1 通过输入输出操作符>> <<2.2 通过scanf和printf输入和输出2.2.1 输出printf 函数2.2.2 输出scanf 函数2.2.3 注意事项 1 基本数据类型 了解…...

(二)原型模式
原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

相机从app启动流程
一、流程框架图 二、具体流程分析 1、得到cameralist和对应的静态信息 目录如下: 重点代码分析: 启动相机前,先要通过getCameraIdList获取camera的个数以及id,然后可以通过getCameraCharacteristics获取对应id camera的capabilities(静态信息)进行一些openCamera前的…...
LLM基础1_语言模型如何处理文本
基于GitHub项目:https://github.com/datawhalechina/llms-from-scratch-cn 工具介绍 tiktoken:OpenAI开发的专业"分词器" torch:Facebook开发的强力计算引擎,相当于超级计算器 理解词嵌入:给词语画"…...
leetcodeSQL解题:3564. 季节性销售分析
leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...
【python异步多线程】异步多线程爬虫代码示例
claude生成的python多线程、异步代码示例,模拟20个网页的爬取,每个网页假设要0.5-2秒完成。 代码 Python多线程爬虫教程 核心概念 多线程:允许程序同时执行多个任务,提高IO密集型任务(如网络请求)的效率…...

(转)什么是DockerCompose?它有什么作用?
一、什么是DockerCompose? DockerCompose可以基于Compose文件帮我们快速的部署分布式应用,而无需手动一个个创建和运行容器。 Compose文件是一个文本文件,通过指令定义集群中的每个容器如何运行。 DockerCompose就是把DockerFile转换成指令去运行。 …...
代理篇12|深入理解 Vite中的Proxy接口代理配置
在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块,…...
CRMEB 中 PHP 短信扩展开发:涵盖一号通、阿里云、腾讯云、创蓝
目前已有一号通短信、阿里云短信、腾讯云短信扩展 扩展入口文件 文件目录 crmeb\services\sms\Sms.php 默认驱动类型为:一号通 namespace crmeb\services\sms;use crmeb\basic\BaseManager; use crmeb\services\AccessTokenServeService; use crmeb\services\sms\…...