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

Python基础语法:变量和数据类型详解(整数、浮点数、字符串、布尔值)①

在这里插入图片描述

文章目录

    • 变量和数据类型详解(整数、浮点数、字符串、布尔值)
      • 一、变量
      • 二、数据类型
        • 1. 整数(int)
        • 2. 浮点数(float)
        • 3. 字符串(str)
        • 4. 布尔值(bool)
      • 三、类型转换
      • 四、综合示例
      • 结论

变量和数据类型详解(整数、浮点数、字符串、布尔值)

在Python编程中,变量和数据类型是基础中的基础。理解并掌握这些概念对于编写高效、准确的代码至关重要。本文将深入探讨Python中的变量和几种主要的数据类型:整数、浮点数、字符串和布尔值。最后,我们还会提供一个复杂的Python示例,帮助更好地理解这些概念的应用。

一、变量

变量是存储数据的容器,可以用来保存和操作不同类型的数据。在Python中,变量的声明和赋值非常简单,无需显式声明类型,直接赋值即可:

x = 10          # 整数
y = 3.14        # 浮点数
name = "Alice"  # 字符串
is_student = True  # 布尔值

在上面的代码中,xynameis_student 分别是整数、浮点数、字符串和布尔值。Python会根据赋值自动推断变量的类型。

二、数据类型

Python是一种动态类型语言,这意味着变量的数据类型是在运行时确定的。下面详细介绍Python中的几种常见数据类型。

1. 整数(int)

整数用于表示没有小数部分的数字。在Python中,整数可以是正数、负数或零,并且没有大小限制,可以表示非常大的数字。例如:

a = 42
b = -7
c = 0

整数运算支持加、减、乘、除等基本运算:

x = 10
y = 3
print(x + y)  # 输出 13
print(x - y)  # 输出 7
print(x * y)  # 输出 30
print(x / y)  # 输出 3.3333333333333335
print(x // y) # 输出 3(整数除法)
print(x % y)  # 输出 1(取余数)
print(x ** y) # 输出 1000(幂运算)
2. 浮点数(float)

浮点数用于表示带有小数部分的数字,通常用于需要精确表示小数的场景。例如:

pi = 3.14159
g = 9.8

浮点数运算支持加、减、乘、除等基本运算:

a = 5.5
b = 2.2
print(a + b)  # 输出 7.7
print(a - b)  # 输出 3.3
print(a * b)  # 输出 12.1
print(a / b)  # 输出 2.5

需要注意的是,由于计算机内部的浮点数表示方法,浮点数运算可能会有精度误差。

3. 字符串(str)

字符串用于表示文本数据,可以用单引号、双引号或三引号括起来。字符串是不可变的,即一旦创建就不能修改其内容。例如:

hello = "Hello, world!"
quote = 'Python is fun.'
multiline = """This is a
multiline string."""

字符串操作包括拼接、重复、切片、查找等:

s1 = "Hello"
s2 = "World"
print(s1 + " " + s2)  # 输出 "Hello World"(拼接)
print(s1 * 3)  # 输出 "HelloHelloHello"(重复)
print(s1[1:4])  # 输出 "ell"(切片)
print("H" in s1)  # 输出 True(查找)
4. 布尔值(bool)

布尔值用于表示真(True)或假(False)两种状态,常用于条件判断和逻辑运算。例如:

is_sunny = True
is_raining = False

布尔值可以通过逻辑运算符进行操作,如 andornot

a = True
b = False
print(a and b)  # 输出 False
print(a or b)  # 输出 True
print(not a)  # 输出 False

三、类型转换

在实际编程中,有时需要在不同数据类型之间进行转换。Python提供了多种类型转换函数,例如 int()float()str()bool()

# 整数转换为浮点数
x = 42
y = float(x)
print(y)  # 输出 42.0# 浮点数转换为整数
pi = 3.14159
n = int(pi)
print(n)  # 输出 3# 数字转换为字符串
num = 123
s = str(num)
print(s)  # 输出 '123'# 字符串转换为布尔值
flag = bool("Hello")
print(flag)  # 输出 True

四、综合示例

为了更好地理解上述概念,下面是一个涉及变量和数据类型的复杂示例,模拟了一个简单的银行账户管理系统:

class BankAccount:def __init__(self, account_number, account_holder, balance=0.0):self.account_number = account_number  # 账户号码(字符串)self.account_holder = account_holder  # 账户持有人(字符串)self.balance = balance  # 账户余额(浮点数)def deposit(self, amount):if amount > 0:self.balance += amountprint(f"成功存入 {amount} 元,当前余额:{self.balance} 元")else:print("存入金额必须大于零")def withdraw(self, amount):if 0 < amount <= self.balance:self.balance -= amountprint(f"成功取出 {amount} 元,当前余额:{self.balance} 元")else:print("取款金额必须大于零且不超过账户余额")def display(self):print(f"账户号码:{self.account_number}")print(f"账户持有人:{self.account_holder}")print(f"账户余额:{self.balance} 元")# 创建账户
account = BankAccount("1234567890", "Alice", 1000.0)# 显示账户信息
account.display()# 存入金额
account.deposit(500.0)# 取出金额
account.withdraw(200.0)# 再次显示账户信息
account.display()

在这个示例中,我们定义了一个 BankAccount 类,包含账户号码、账户持有人和账户余额三个属性,以及存款、取款和显示账户信息的方法。通过这个示例,可以看到如何使用变量和数据类型来创建和操作一个简单的银行账户管理系统,代码运行结果如下:
在这里插入图片描述

结论

变量和数据类型是Python编程的基础,理解这些概念对于编写高效和正确的代码至关重要。通过本文的介绍,希望你能对Python中的变量和常用数据类型有一个清晰的认识,并能够在实际编程中灵活运用这些知识。

欢迎点赞|关注|收藏|评论,您的肯定是我创作的动力

在这里插入图片描述

相关文章:

Python基础语法:变量和数据类型详解(整数、浮点数、字符串、布尔值)①

文章目录 变量和数据类型详解&#xff08;整数、浮点数、字符串、布尔值&#xff09;一、变量二、数据类型1. 整数&#xff08;int&#xff09;2. 浮点数&#xff08;float&#xff09;3. 字符串&#xff08;str&#xff09;4. 布尔值&#xff08;bool&#xff09; 三、类型转换…...

【C++航海王:追寻罗杰的编程之路】关联式容器的底层结构——红黑树

目录 1 -> 红黑树 1.1 -> 红黑树的概念 1.2 -> 红黑树的性质 1.3 -> 红黑树节点的定义 1.4 -> 红黑树的结构 1.5 -> 红黑树的插入操作 1.6 -> 红黑树的验证 1.8 -> 红黑树与AVL树的比较 2 -> 红黑树模拟实现STL中的map与set 2.1 -> 红…...

MySQL DDL

数据库 1 创建数据库 CREATE DATABASE 数据库名 CREATE DATABASE IF NOT EXISTS 数据库名;&#xff08;判断是否存在) CREATE DATABASE 数据库名 CHARACTER SET 字符 2 查看数据库 SHOW DATABASES; 查看某个数据库的信息 SHOW CAEATE DATABASE 数据库名 3 修改数据库 …...

从模型到应用:李彦宏解读AI时代的新趋势与挑战

如何理解李彦宏说的“不要卷模型&#xff0c;要卷应用” 开源项目的机遇与挑战 7月4日&#xff0c;2024世界人工智能大会暨人工智能全球治理高级别会议在上海世博中心举办。在产业发展主论坛上&#xff0c;百度创始人、董事长兼首席执行官李彦宏呼吁&#xff1a;“大家不要卷…...

C++ STL 随机数用法介绍

目录 一&#xff1a;C语言中的随机数 二&#xff1a;C中的随机数 1. 生成随机数的例子 2. 随机数引擎 3. 随机数引擎适配器 4. C中预定义的随机数引擎&#xff0c;引擎适配器 5. 随机数分布 一&#xff1a;C语言中的随机数 <stdlib.h>//初始化随机种子 srand(static_ca…...

容器之docker compose

Docker Compose 是一个用于定义和运行多容器 Docker 应用的工具。通过一个 YAML 文件&#xff0c;您可以配置应用程序需要的所有服务&#xff0c;并使用单个命令来创建和启动这些服务。以下是对 Docker Compose 的详细介绍&#xff1a; 核心概念 服务&#xff08;Services&am…...

MIT机器人运动控制原理浅析-人形机器人

MIT人形机器人基于开发改进的执行器全新设计&#xff0c;通过可感知执行器运动动力学移动规划器(Actuator-Aware Kino-Dynamic Motion Planner)及着地控制器(Landing Controller)等实现机器人的运动控制。 机器人设计 机器人高0.7米&#xff0c;21KG(四肢重量 25%)&#xff0c;…...

开源 WAF 解析:选择最适合你的防护利器

前言 随着网络安全风险的增加&#xff0c;Web 应用防火墙&#xff08;WAF&#xff09;成为保护网站和应用程序免受攻击的关键工具。在众多的选择中&#xff0c;开源 WAF 以其灵活性、可定制性和成本效益备受青睐。本文将深入探讨几种主流开源 WAF 解决方案&#xff0c;帮助你选…...

AirPods Pro新功能前瞻:iOS 18的五大创新亮点

随着科技的不断进步&#xff0c;苹果公司一直在探索如何通过创新提升用户体验。iOS 18的推出&#xff0c;不仅仅是iPhone的一次系统更新&#xff0c;更是苹果生态链中重要一环——AirPods Pro的一次重大升级。 据悉&#xff0c;iOS 18将为AirPods Pro带来五项新功能&#xff0…...

JavaScript中的可选链操作符

在JavaScript中&#xff0c;?. 被称为可选链操作符&#xff08;Optional Chaining Operator&#xff09;。它允许你访问对象的深层属性而不必显式地检查每一层属性是否存在。如果链中的某个属性不存在&#xff0c;表达式将短路返回undefined&#xff0c;而不是抛出一个TypeErr…...

huggingface笔记:gpt2

0 使用的tips GPT-2是一个具有绝对位置嵌入的模型&#xff0c;因此通常建议在输入的右侧而不是左侧填充GPT-2是通过因果语言建模&#xff08;CLM&#xff09;目标进行训练的&#xff0c;因此在预测序列中的下一个标记方面非常强大 利用这一特性&#xff0c;GPT-2可以生成语法连…...

一次业务的批量数据任务的处理优化

文章目录 一次业务的批量数据任务的处理优化业务背景1.0版本 分批处理模式2.0版本 平衡任务队列模式3.0版本 优化调度平衡任务队列模式总结 一次业务的批量数据任务的处理优化 业务背景 一个重新生成所有客户的财务业务指标数据的批量数据处理任务。 1.0版本 分批处理模式 …...

新能源汽车充电站远程监控系统S275钡铼技术无线RTU

新能源汽车充电站的远程监控系统在现代城市基础设施中扮演着至关重要的角色&#xff0c;而钡铼技术的S275无线RTU作为一款先进的物联网数据监测采集控制短信报警终端&#xff0c;为充电站的安全运行和高效管理提供了强大的技术支持。 技术特点和功能 钡铼S275采用了基于UCOSI…...

海外视频媒体发布/发稿:如何在国外媒体以视频的形式宣发

1. 背景介绍 在如今数字化时代&#xff0c;每个国家都拥有着各自的视频媒体平台&#xff0c;而主流媒体也都纷纷加入了视频发布的行列。视频媒体的宣发形式主要包括油管Youtube等视频分享平台&#xff0c;以及图文配合的发布方式。通过在视频中夹带链接&#xff0c;媒体可以以…...

HTML 【实用教程】(2024最新版)

核心思想 —— 语义化 【面试题】如何理解 HTML 语义化 ?仅通过标签便能判断内容的类型&#xff0c;特别是区分标题、段落、图片和表格 增加代码可读性&#xff0c;让人更容易读懂对SEO更加友好&#xff0c;让搜索引擎更容易读懂 html 文件的基本结构 html 文件的文件后缀为 …...

How to Describe Figures in a Research Article

How to Describe Figures in a Research Article DateAuthorVersionNote2024.07.10Dog TaoV1.0Finish the document. 文章目录 How to Describe Figures in a Research ArticleGeneral GuidelinesDetailed DescriptionsCommon Describing Phrases Effective communication of …...

昇思MindSpore学习入门-CELL与参数一

Cell作为神经网络构造的基础单元&#xff0c;与神经网络层(Layer)的概念相对应&#xff0c;对Tensor计算操作的抽象封装&#xff0c;能够更准确清晰地对神经网络结构进行表示。除了基础的Tensor计算流程定义外&#xff0c;神经网络层还包含了参数管理、状态管理等功能。而参数(…...

【k8s中安装rabbitmq】k8s中安装rabbitmq并搭建镜像集群-hostpath版

文章目录 简介一.条件及环境说明二.需求说明三.实现原理及说明四.详细步骤4.1.规划节点标签4.2.创建configmap配置4.3.创建三个statefulset和service headless配置4.4.创建service配置 五.安装完后的配置六.安装说明 简介 k8s集群中搭建rabbitmq集群服务一般都会用到pvc&#x…...

(5) 深入探索Python-Pandas库的核心数据结构:Series详解

目录 前言1. Series 简介2. Series的特点3. Series的创建3.1 使用列表创建Series3.2 使用字典创建Series3.3 使用列表和自定义索引创建Series3.4 指定数据类型和名称 4. Series的索引/切片4.1 下标索引&#xff1a;基于整数位置的索引4.2 基于标签的索引4.3 切片4.4 使用.loc[]…...

JAVA之开发神器——IntelliJ IDEA的下载与安装

一、IDEA是什么&#xff1f; IEAD是JetBrains公司开发的专用于java开发的一款集成开发环境。由于其功能强大且符合人体工程学&#xff08;就是更懂你&#xff09;的优点&#xff0c;深受java开发人员的喜爱。目前在java开发工具中占比3/4。如果你要走java开发方向&#xff0c;那…...

通过Umijs从0到1搭建一个React项目

有一阵时间没写react了&#xff0c;今天通过umi搭建一个demo项目复习一下react&#xff1b;umi是一个可扩展的企业级前端应用框架&#xff0c;在react市场中还是比较火的一个框架。 Umi官方文档&#xff1a;Umi 介绍 (umijs.org) 一、构建项目。 1、安装包管理工具。 官方推…...

Redis 数据过期及淘汰策略

Redis 数据过期及淘汰策略 过期策略 定时过期 在设置key​的过期时间的同时&#xff0c;为该key​创建一个定时器&#xff0c;让定时器在key​的过期时间来临时&#xff0c;对key进行删除。到过期时间就会立即清除。该策略可以立即清除过期的数据&#xff0c;对内存很友好&a…...

vue vite+three在线编辑模型导入导出

文章目录 序一、1.0.0版本1.新增2.编辑3.导出4.导入 总结 序 要实现一个类似于数字孪生的场景 可以在线、新增、删除模型 、以及编辑模型的颜色、长宽高 然后还要实现 编辑完后 保存为json数据 记录模型数据 既可以导入也可以导出 一、1.0.0版本 1.新增 先拿建议的立方体来…...

去水印小程序源码修复版-前端后端内置接口+第三方接口

去水印小程序源码&#xff0c;前端后端&#xff0c;内置接口第三方接口&#xff0c; 修复数据库账号密码错误问题&#xff0c;内置接口支持替换第三方接口&#xff0c; 文件挺全的&#xff0c;可以添加流量主代码&#xff0c;搭建需要准备一台服务器&#xff0c;备案域名和http…...

机器学习:预测评估8类指标

机器学习&#xff1a;8类预测评估指标 R方值、平均值绝对误差值MAE、均方误差MSE、均方误差根EMSE、中位数绝对误差MAD、平均绝对百分误差MAPE、可解释方差分EVS、均方根对数误差MLSE。 一、R方值 1、说明&#xff1a; R方值&#xff0c;也称为确定系数或拟合优度&#xff…...

【深度学习基础】MAC pycharm 专业版安装与激活

文章目录 一、pycharm专业版安装二、激活 一、pycharm专业版安装 PyCharm是一款专为Python开发者设计的集成开发环境&#xff08;IDE&#xff09;&#xff0c;旨在帮助用户在使用Python语言开发时提高效率。以下是对PyCharm软件的详细介绍&#xff0c;包括其作用和主要功能&…...

排序相关算法--1.插入排序+冒泡排序回顾

1.基本分类 2.插入排序 特点&#xff1a;有实践意义&#xff08;例如后期快排的优化&#xff09;&#xff0c;适应性强&#xff0c;一般不会到时间复杂度最坏的情况。 将第一个元素视为已经排好序的序列。取出下一个元素&#xff0c;在已经排好序的序列中从后往前比较&#xf…...

变阻器的故障排除方法有哪些?

变阻器&#xff0c;特别是滑动变阻器&#xff0c;作为电子电路中的常见元件&#xff0c;其故障排除方法主要依据具体的故障现象来确定。以下是一些常见的故障现象及其排除方法&#xff1a; 一、接触不良 现象&#xff1a;电阻器不起作用或电压不稳定。 排除方法&#xff1a; …...

软考《信息系统运行管理员》-3.1信息系统设施运维的管理体系

3.1信息系统设施运维的管理体系 1 信息系统设施运维的对象 基础环境 主要包括信息系统运行环境(机房、设备间、配线室、基站、云计算中心 等)中的空调系统、供配电系统、通信应急设备系统、防护设备系统(如消防系统、安全系统) 等&#xff0c;能维持系统安全正常运转&#xf…...

Nginx重定向

Nginx重定向 location 匹配 location匹配的就是后面的URL /WordPress 192.168.118.10/wordpress location匹配的分类和优先级 1.精确匹配 location/对字符串进行完全匹配,必须完全符合2.正则匹配 ^~ 前缀匹配,以什么为开头~ 区分大小写的匹配~* 不区分大小写!~: 区分大小…...

用dw个人网站怎么做/惠州疫情最新情况

Unity 小科普 老规矩&#xff0c;先介绍一下 Unity 的科普小知识&#xff1a; Unity是 实时3D互动内容创作和运营平台 。包括游戏开发、美术、建筑、汽车设计、影视在内的所有创作者&#xff0c;借助 Unity 将创意变成现实。Unity 平台提供一整套完善的软件解决方案&#xff…...

广州铁路投资建设集团网站/服务推广软文范例

i2c-tools i2cdetect 检测在系统上的i2c总线&#xff0c;例如&#xff1a; i2cdetect -l 检测挂载在i2c总线上器件&#xff0c;例如&#xff1a; i2cdetect -r -y 0 &#xff08;检测i2c-0上的挂载情况&#xff09; i2cdump 查看器件所有寄存器的值&#xff0c;例如&#xff1a…...

免费代理做企业网站/网络推广引流是做什么的

我想搭建个测试环境&#xff0c;所以我偷懒了&#xff0c;不想搭2台服务器角色&#xff08;DC和LYNC标准版&#xff09;&#xff0c;因此问题出现了&#xff0c;当我运行LYNC标准版安装向导时安装SQL EXPRESS时会出错。 提示&#xff1a;安装必备组件失败:SqlExpre***tc 这是为…...

信息化网站建设的请示/b站软件推广大全

具有相同名字的object和class&#xff0c;分别为伴生对象和伴生类 1 class ApplyTest { //伴生类 2 3 } 4 5 object ApplyTest { //伴生对象 6 7 } 补充代码: object ApplyApp {def main(args: Array[String]): Unit {var c ApplyTest() // >object.apply()c() …...

网站建设的空间选择/手机端seo

为什么阿里巴巴的持久层抛弃hibernate&#xff0c;采用MyBatis框架&#xff1f; 原因大概有以下4点&#xff1a; 尤其是需要处理大量数据或者大并发情况的网站服务&#xff0c;这也阿里选择MyBatis的原因。 MyBatis整体架构 不多讲&#xff0c;先看目录图 MyBatis源码笔记文档…...

网站开发实训周报/济南seo排名搜索

名称 内部版本 发布日期 支持 .NET Framework 版本 备注 引入 .NET Framework 前 [4] 1 Visual Studio 4.0 1995-04 - 初版 Visual Studio 97 5.0 1997-02 - Visual Studio 6.0 6.0 1998-06 - 引入 .NET Framework 后 [4] 2 Visual Studio .NET 2002…...