2.Python基础知识:注释、变量以及数据类型、标识符和关键字、输入函数、输出函数、运算符、程序类型转换
1. 注释
注释是用来解释代码,增强代码可读性的部分。在 Python 中,注释分为单行注释和多行注释。
-
单行注释:以
#
开头,后面的内容都被视为注释。# 这是一个单行注释 print("Hello, World!") # 输出 "Hello, World!"
-
多行注释:使用三引号
'''
或"""
将多行文本括起来。""" 这是一个多行注释, 可以用于解释较长的代码逻辑。 """ print("Hello, Python!")
2. 变量和数据类型
-
变量:在 Python 中,变量不需要事先声明类型,赋值时自动推断类型。
x = 10 # 整型变量 name = "Alice" # 字符串变量
-
数据类型:Python 支持多种内置数据类型,常见的有:
- 整型(int):表示整数值。
x = 10
- 浮点型(float):表示带小数点的数值。
y = 3.14
- 字符串(str):表示文本数据。
name = "Alice"
- 布尔型(bool):只有两个值
True
和False
。is_active = True
- 列表(list):有序集合,可以包含不同类型的元素。
numbers = [1, 2, 3, 4]
- 元组(tuple):有序的不可变集合。
coords = (10, 20)
- 字典(dict):键值对集合。
person = {"name": "Alice", "age": 25}
- 集合(set):无序、不重复的元素集合。
unique_numbers = {1, 2, 3, 4}
- 整型(int):表示整数值。
3. 标识符和关键字
-
标识符:标识符是变量、函数、类、模块等的名称。标识符的命名规则:
- 只能包含字母、数字和下划线(
_
)。 - 不能以数字开头。
- 区分大小写(例如
myVar
和myvar
是不同的标识符)。
合法的标识符示例:
var1 = 10 _my_var = "Python" MyVar = 20
- 只能包含字母、数字和下划线(
-
关键字:Python 中有一些保留的关键字,不能作为标识符使用。可以通过
import keyword
来查看所有的关键字。import keyword print(keyword.kwlist)
常见的关键字包括:
if
,else
,for
,while
,try
,except
,class
,def
,return
等。
4. 输入函数
Python 提供了 input()
函数用于从用户获取输入。
-
input()
函数:默认返回字符串类型,若想输入其他类型的数据,需要手动转换。name = input("请输入你的名字:") # 获取用户输入 print(f"你好, {name}")
如果要获取数字输入,可以将输入转换为相应的数字类型:
age = int(input("请输入你的年龄:")) print(f"你今年 {age} 岁。")
5. 输出函数
Python 使用 print()
函数来输出内容。
-
print()
函数:可以打印文本、变量、计算结果等。print("Hello, World!") name = "Alice" print(f"你好, {name}") # 使用 f-string 格式化输出
你还可以使用逗号分隔不同的值,这样它们会被打印在同一行,且自动加上空格:
x = 10 y = 20 print("x 的值是", x, "y 的值是", y)
6. 运算符
Python 支持常见的算术运算符、比较运算符、逻辑运算符等。
-
算术运算符:
+
加法-
减法*
乘法/
除法//
整除%
取余**
幂运算
示例:
a = 10 b = 5 print(a + b) # 15 print(a - b) # 5 print(a * b) # 50 print(a / b) # 2.0 print(a // b) # 2 print(a % b) # 0 print(a ** b) # 100000
-
比较运算符:
==
等于!=
不等于>
大于<
小于>=
大于等于<=
小于等于
示例:
a = 10 b = 5 print(a == b) # False print(a != b) # True print(a > b) # True
-
逻辑运算符:
and
逻辑与or
逻辑或not
逻辑非
示例:
a = True b = False print(a and b) # False print(a or b) # True print(not a) # False
7. 程序类型转换
Python 提供了内置的类型转换函数,允许在不同的数据类型之间转换。
-
int()
:将其他类型转换为整数。x = "10" y = int(x) # 转换为整数 print(y) # 10
-
float()
:将其他类型转换为浮点数。x = "3.14" y = float(x) # 转换为浮点数 print(y) # 3.14
-
str()
:将其他类型转换为字符串。x = 10 y = str(x) # 转换为字符串 print(y) # "10"
-
list()
:将其他可迭代对象转换为列表。x = (1, 2, 3) y = list(x) # 转换为列表 print(y) # [1, 2, 3]
-
tuple()
:将其他可迭代对象转换为元组。x = [1, 2, 3] y = tuple(x) # 转换为元组 print(y) # (1, 2, 3)
总结
以上内容涵盖了 Python编程中的一些基础知识,包括注释、变量和数据类型、标识符与关键字、输入输出函数、常用运算符以及数据类型的转换。这些基础知识是学习 Python编程的基石,掌握它们将为后续的学习打下坚实的基础。
相关文章:
2.Python基础知识:注释、变量以及数据类型、标识符和关键字、输入函数、输出函数、运算符、程序类型转换
1. 注释 注释是用来解释代码,增强代码可读性的部分。在 Python 中,注释分为单行注释和多行注释。 单行注释:以 # 开头,后面的内容都被视为注释。 # 这是一个单行注释 print("Hello, World!") # 输出 "Hello, Wor…...
3NF讲解
3NF讲解 3NF(第三范式)是数据库设计中的一种规范化方法,目的是消除数据冗余和避免数据异常。它帮助数据库保持高效,灵活和一致性。理解3NF的关键点在于它依赖于前两个范式(1NF和2NF)的基础。 1. 第一范式…...
Spring Boot框架下的单元测试
1. 什么是单元测试 1.1 基本定义 单元测试(Unit Test) 是对软件开发中最小可测单位(例如一个方法或者一个类)进行验证的一种测试方式。在 Java 后端的 Spring Boot 项目中,单元测试通常会借助 JUnit、Mockito 等框架对代码中核心逻辑进行快…...

AI测试工程师成长指南:以DeepSeek模型训练为例
目录 引言:AI测试工程师的使命与挑战成长日记:从测试小白到AI测试专家核心能力:AI测试工程师的必备素养知识体系:技术栈与技能图谱AI测试工具全景:以DeepSeek为核心的工具链实战训练模式:以DeepSeek模型迭…...
【数据结构】_队列的结构与实现
目录 1. 队列的概念和结构 2. 队列的应用 3. 队列的实现 3.1 队列实现的底层结构选择 3.2 结构体设计 3.2.1 仅为链表结点设计结构体 3.2.2 为链表再设计一个结构体 3.3 Queue.h 3.4 Queue.c 3.5 Test_Queue.c 注:部分方法实现细节 1. 队列的概念和结构 …...

机器学习--2.多元线性回归
多元线性回归 1、基本概念 1.1、连续值 1.2、离散值 1.3、简单线性回归 1.4、最优解 1.5、多元线性回归 2、正规方程 2.1、最小二乘法 2.2、多元一次方程举例 2.3、矩阵转置公式与求导公式 2.4、推导正规方程0的解 2.5、凸函数判定 成年人最大的自律就是:…...

MySQL时间类型相关总结(DATETIME, TIMESTAMP, DATE, TIME, YEAR)
MySQL时间类型相关总结(DATETIME, TIMESTAMP, DATE, TIME, YEAR) MySQL官方文档: https://dev.mysql.com/doc/refman/8.0/en/date-and-time-types.html 一. 对比: 在 MySQL 中,处理时间相关的数据类型主要有以下几种:DATE、TIME、…...

朴素贝叶斯原理
在所有的机器学习分类算法中,朴素贝叶斯和其他绝大多数的分类算法都不同。对于大多数的分类算法,比如决策树,KNN,逻辑回归,支持向量机等,他们都是判别方法,也就是直接学习出特征输出Y和特征X之间的关系,要么…...
k8s中,一.pod污点,二.pod容器污点容忍策略,三.pod优先级(PriorityClass类)
一.pod污点:污点是让节点与pod产生排斥的一类规则污点标签的命令1.查看污点标签kubectl describe nodes 节点名2.设置污点标签kubectl taint node 节点名 key值value值:污点标签种类3.删除污点标签kubectl taint node 节点名 key值value值:污点标签种类-4.污点标签种类驱逐:NoE…...

【重生之学习C语言----水仙花篇】
目录 编辑 ----------------------------------------begin-------------------------------------- 一、什么是水仙花数? 二、问题分析 确定数字的位数:计算输入数字的位数 n。 分离每一位数字:例如将 153 分离为 1、5、3。 计算各…...

两步构建 AI 总结助手,实现智能文档摘要
在信息极度丰富的当下,如何从海量且复杂的文件资料中筛选出关键内容,成为了不少企业和个人急需解决的问题。本次解决方案将向您介绍,如何通过函数计算 FC 阿里云百炼平台搭建智能 AI 总结助手,实现高效的文本自动总结和信息提取。…...

承压金字塔(蓝桥杯17C)
文件读取,与写入:C 文件和流 | 菜鸟教程 #include <iostream> #include <fstream> #include <string> using namespace std; double sum[30][30]; int main() {ifstream infile("C:\\Users\\xutianci\\OneDrive\\Desktop\\TMOCC\…...
day33-数据同步rsync
一、Rsync本地模式和远程模式 纯通过rsync的命令,来实现,数据目录A 拷贝到数据目录B 也就是模拟cp的用法 很简单 1.安装 yum install rsync -y 2.命令语法,分几个模式 - 本地模式 rsync 参数 源路径 目标路径 rsync -xxxxx /var…...
Android 实现首页Tab切换并且支持懒加载功能详解
目录 1. 添加依赖2. 布局文件3. 创建 Fragment4. 创建适配器5. 在 MainActivity 中设置 TabLayout 和 ViewPager2 1. 添加依赖 在 build.gradle 文件中添加以下依赖: implementation androidx.viewpager2:viewpager2:1.1.0-beta01 implementation com.google.andr…...

[Android] 360行车记录仪谷歌版
[Android] 360行车记录仪谷歌版 链接:https://pan.xunlei.com/s/VOIQYq-jmW8Jpb8y3EIA3YdtA1?pwd3abw# 新买的360行车记录仪,配套软件让安装360智慧生活软件,二百多兆,各种功能齐全、忒齐全,好多用不到,…...
基于Redis分布式锁
1. 获取锁的过程 使用SETNX命令:SETNX(SET if Not eXists)是一个原子操作,它会在指定的key不存在时,将key的值设置为给定的value,并返回1;如果key已经存在,则不做任何操作࿰…...
Spring Boot 条件注解:@ConditionalOnProperty 完全解析
在 Spring Boot 项目中,有时候我们希望根据配置文件中的某个属性值来决定是否启用某个功能或加载某个组件。此时,ConditionalOnProperty 注解就可以发挥作用。它通过配置文件的属性值控制 Bean 或配置类的加载,使得我们的程序更具灵活性。 本…...
canny边缘检测
Canny边缘检测算法是一种广泛使用的边缘检测方法,由John F.Canny在1986年提出。它被认为是边缘检测的“黄金标准”,因为它在检测边缘的同时能够很好地抑制噪声,并且能够精确地定位边缘。Canny算法通过一系列步骤来实现鲁棒的边缘检测…...

团建 蓝桥杯省a 15
问题描述 小蓝正在和朋友们团建,有一个游戏项目需要两人合作,两个人分别拿到一棵大小为 nn 和 mm 的树,树上的每个结点上有一个正整数权值。 两个人需要从各自树的根结点 1 出发走向某个叶结点,从根到这个叶结点的路径上经过的所…...
【逻辑学导论】1.6 有效性和真实性
当一个演绎论证成功地将结论和前提必然地联系起来,它是有效的。有效性是针对论证的各命题之间的关系而言的。一个论证是有效的,当且仅当它不可能有真前提和假结论,当且仅当其结论是从其前提逻辑必然地推导出来的。因此,有效性永远…...

【机器视觉】单目测距——运动结构恢复
ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛…...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级
在互联网的快速发展中,高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司,近期做出了一个重大技术决策:弃用长期使用的 Nginx,转而采用其内部开发…...

【JVM】Java虚拟机(二)——垃圾回收
目录 一、如何判断对象可以回收 (一)引用计数法 (二)可达性分析算法 二、垃圾回收算法 (一)标记清除 (二)标记整理 (三)复制 (四ÿ…...

沙箱虚拟化技术虚拟机容器之间的关系详解
问题 沙箱、虚拟化、容器三者分开一一介绍的话我知道他们各自都是什么东西,但是如果把三者放在一起,它们之间到底什么关系?又有什么联系呢?我不是很明白!!! 就比如说: 沙箱&#…...

【深度学习新浪潮】什么是credit assignment problem?
Credit Assignment Problem(信用分配问题) 是机器学习,尤其是强化学习(RL)中的核心挑战之一,指的是如何将最终的奖励或惩罚准确地分配给导致该结果的各个中间动作或决策。在序列决策任务中,智能体执行一系列动作后获得一个最终奖励,但每个动作对最终结果的贡献程度往往…...

【Linux】Linux安装并配置RabbitMQ
目录 1. 安装 Erlang 2. 安装 RabbitMQ 2.1.添加 RabbitMQ 仓库 2.2.安装 RabbitMQ 3.配置 3.1.启动和管理服务 4. 访问管理界面 5.安装问题 6.修改密码 7.修改端口 7.1.找到文件 7.2.修改文件 1. 安装 Erlang 由于 RabbitMQ 是用 Erlang 编写的,需要先安…...

海云安高敏捷信创白盒SCAP入选《中国网络安全细分领域产品名录》
近日,嘶吼安全产业研究院发布《中国网络安全细分领域产品名录》,海云安高敏捷信创白盒(SCAP)成功入选软件供应链安全领域产品名录。 在数字化转型加速的今天,网络安全已成为企业生存与发展的核心基石,为了解…...
Python的__call__ 方法
在 Python 中,__call__ 是一个特殊的魔术方法(magic method),它允许一个类的实例像函数一样被调用。当你在一个对象后面加上 () 并执行时(例如 obj()),Python 会自动调用该对象的 __call__ 方法…...

Java中HashMap底层原理深度解析:从数据结构到红黑树优化
一、HashMap概述与核心特性 HashMap作为Java集合框架中最常用的数据结构之一,是基于哈希表的Map接口非同步实现。它允许使用null键和null值(但只能有一个null键),并且不保证映射顺序的恒久不变。与Hashtable相比,Hash…...

C++ Saucer 编写Windows桌面应用
文章目录 一、背景二、Saucer 简介核心特性典型应用场景 三、生成自己的项目四、以Win32项目方式构建Win32项目禁用最大化按钮 五、总结 一、背景 使用Saucer框架,开发Windows桌面应用,把一个html页面作为GUI设计放到Saucer里,隐藏掉运行时弹…...