python基础语法(一)变量

目录

使用变量

变量的类型

整数

浮点数

字符串

布尔

其他


使用变量

读取变量的值

a = 10
print(a)

修改变量的值

a=20
print(a)

在Python中,需要注意的是,修改变量也是使用=运算,看起来和定义变量没有明显区别

当然,也可以把一个变量的值赋值给另一个变量

a=10
b=20
a=b
print(a)

变量的类型

变量里面存储的不仅仅是数字,还可以存储其它种类的数据,为了区分不同种类的类型,我们引入了“类型”这样的概念

和C++/Java等语言不同,Python变量的类型不需要显式指定,而是在赋值的时候确定的

整数

a=10
print(type(a))

type和print类似,也是python内置的函数,可以使用type来查看一个变量的类型

和C++/Java等语言不同,python的int类型变量,表示的数据范围是没有上限的,理论上只要内存无限大,就可以表示无限大小的数据

浮点数

a=2.1
print(type(a))

和C++/Java等语言不同,python的小数只有float这一种类型,没有double类型,但是实际上,python的float就相当于C++/Java的double,表示双精度浮点型

关于单精度浮点数和双精度浮点数的问题,和单精度浮点数相比,双精度浮点数占用的内存空间更多,同时表示的数据精度更高,精确到小数点后15位

字符串

a="hello"
print(type(a))

使用‘’或者“”引起来的,叫做字符串,可以用来表示文本

在python中,单引号构成的字符串和双引号构成的字符串,没有区别,“hello”和‘hello’是完全等价的

可以使用len函数来获取字符串的长度

a="hello"
print(len(a))

可以使用+针对两个字符串进行拼接

a = 'hello'
b = 'world'
print(a+b)

此处是两个字符串相加,不能拿字符串和整数/浮点数相加

字符串作为开发中最常用到的数据类型,支持的操作方式也是非常丰富的

布尔

布尔类型是一个特殊的类型,取值只有两种,True(真)和False(假)

布尔类型也是数学上的一个概念,我们初中就学过一个概念叫做命题,进一步的就可以判断命题的真假

a =True
b=False
print(type(a))
print(type(b))

其他

除了上述的类型之外,python中还有list,tuple,dict,自定义类型等等

那为什么要有这么多的类型

(1)类型决定了数据在内存中占据多大空间

例如:float类型在内存中占据八个字节

(2)类型约定了能对这个变量做什么样的操作

例如:float/int类型的变量,可以进行+-*/等操作

而str类型的变量,只能进行+(并且行为是字符串拼接),不能进行-*/,但是还能使用len等其他操作

在python中,一个变量是什么类型,是可以在“程序运行”过程中发生的,这个特性叫做“动态类型”

a=10
print(type(a))
a=0.5
print(type(a))

在程序执行过程当中,a的类型刚开始是int,后面变成了str

C/Java这样的语言是不允许这样的操作,一个变量定义后类型就是固定的了,这种特性叫做“静态类型”

动态类型特性是一把双刃剑

对于中小型程序,可以大大的解约代码量(比如写一段代码可以同时支持多种类型)

对于大型程序,则提高的模块之间的交互成本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/599861.shtml

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

相关文章

qiankun 公共依赖

1、提取公共依赖的目的 减少相同资源的重复加载资源版本不同步打包文件庞大2、如何提取公共依赖 基本思路:1、相同依赖 采用 CDN 的方式加载,并把 所有依赖的 CDN 链接 统一放到一个文件中进行管理 2、把存放 CDN 链接的文件,引入到 vue.conf…

创意与技术的结晶:AI魔法绘图与中文描述的完美结合

在人类文明的长河中,创意与技术一直是推动发展的重要动力。随着科技的日新月异,人工智能(AI)在创意领域的应用逐渐崭露头角,而AI魔法绘图与中文描述的结合,更是将这一趋势推向了新的高度。AI魔法绘图是一种…

NNote插件:让网络阅读变得更高效,轻松同步至Notion笔记

NNote笔记 在这个互联网时代,我们每天都在浏览器中阅读大量的文章和资讯,时常会遇到让人眼前一亮的观点和想法。然而,当我们试图将这些精彩内容记录下来时,却常常感受到复制粘贴的繁琐。为了解决这个问题,NNote插件应运…

HarmonyOS 应用开发学习笔记 ets自定义组件及其引用 @Component自定义组件

Component注解的作用是用来构建自定义组件 Component组件官方文档 自定义组件具有以下特点: 可组合:允许开发者组合使用系统组件、及其属性和方法。 可重用:自定义组件可以被其他组件重用,并作为不同的实例在不同的父组件或容器…

【深度学习每日小知识】数据增强

数据增强是通过对原始数据进行各种转换和修改来人工生成附加数据的过程,旨在增加机器学习模型中训练数据的大小和多样性。这对于计算机视觉领域尤为重要,因为图像经常被用作输入数据。 计算机视觉中的数据增强 数据增强的主要目标是解决过拟合问题&…

Java 开发环境搭建

什么是 JDK 和 JRE? JDK (Java Development Kit):是 Java 程序开发工具包,包含 JRE 和开发人员使用的工具JRE(Java Runtime Environment):是 Java 程序的运行时环境,包含…

Javaweb之Mybatis的基础操作之新增和更新操作的详细解析

1.4 新增 功能:新增员工信息 1.4.1 基本新增 员工表结构: SQL语句: insert into emp(username, name, gender, image, job, entrydate, dept_id, create_time, update_time) values (songyuanqiao,宋远桥,1,1.jpg,2,2012-10-09,2,2022-10-…

Spark内核解析-内存管理7(六)

1、Spark内存管理 Spark 作为一个基于内存的分布式计算引擎,其内存管理模块在整个系统中扮演着非常重要的角色。理解 Spark 内存管理的基本原理,有助于更好地开发 Spark 应用程序和进行性能调优。本文中阐述的原理基于 Spark 2.1 版本。 在执行 Spark 的…

git 本地仓库

本地仓库 start.bat 启动

win7系统报错msvcp140.dll丢失的多种解决方法分享

在Windows 7操作系统中,msvcp140.dll是一个非常重要的动态链接库文件,它负责许多应用程序的正常运行。然而,由于各种原因,我们可能会遇到丢失msvcp140.dll的问题。当msvcp140.dll文件丢失或损坏时,可能会导致程序无法启…

Apache Commons Email在邮件发送中的应用

第1章:简介 大家好,我是小黑,今天咱们聊聊Apache Commons Email这个库,它在发送邮件方面可谓是小而美的利器。Apache Commons Email基于JavaMail API,但它提供了更简洁、更易用的接口,让咱们在处理电子邮件…

MySQL-DCL

DCL是数据控制语言,用来管理数据库用户,控制数据库的访问权限。 管理用户:管理哪些用户可以访问哪些数据库 1.查询用户 USE mysql; SELECT * FROM user; 注意: MySQL中用户信息和用户的权限信息都是记录在mysql数据库的user表中的…

Python重温笔记番外篇

1. 写在前面 今天这篇文章是python重温笔记的番外,整理一些面试中的问题以及遇到过的一些坑, 正好借着这个机会把前面的知识进行一个串联, 要不然这些知识很容易就会遗忘, 毕竟知识多而又不太容易常用到。 涉及到的知识包括列表推…

ARCGIS PRO SDK 使用条件管理 Pro UI

ARCGIS PRO UI简单介绍以下&#xff1a; 第一步&#xff1a;在Config.daml中在</AddInfo>标签下加上条件<conditions>标签&#xff08;必须添加的&#xff09; <conditions><!-- 定义条件 &#xff0c;此处定义了两个--Tab 另一个为 group><insert…

【AI视野·今日Robot 机器人论文速览 第六十六期】Tue, 31 Oct 2023

AI视野今日CS.Robotics 机器人学论文速览 Tue, 31 Oct 2023 Totally 39 papers &#x1f449;上期速览✈更多精彩请移步主页 Daily Robotics Papers DEFT: Dexterous Fine-Tuning for Real-World Hand Policies Authors Aditya Kannan, Kenneth Shaw, Shikhar Bahl, Pragna Ma…

算法第十一天-递增顺序搜索树

递增顺序搜索树 题目要求 解题思路 1.二叉搜索树&#xff08;BST&#xff09; 2.任意两个不同节点 遇到二叉搜索树&#xff0c;立即想到这句话&#xff1a;[二叉搜索树&#xff08;BST&#xff09;的中序遍历是有序的]。这是解决所有二叉搜索树问题的关键。 要求BST的任意两…

一网打尽所有主流平台的实时热榜

今日热榜 一网打尽所有主流平台的实时热榜https://tophub.today

LLM增强LLM;通过预测上下文来提高文生图质量;Spikformer V2;同时执行刚性和非刚性编辑的通用图像编辑框架

文章首发于公众号&#xff1a;机器感知 LLM增强LLM&#xff1b;通过预测上下文来提高文生图质量&#xff1b;Spikformer V2&#xff1b;同时执行刚性和非刚性编辑的通用图像编辑框架 LLM Augmented LLMs: Expanding Capabilities through Composition 本文研究了如何高效地组…

生活中的物理3——神奇陷阱(随机倒下的抽屉柜门)

1实验 材料&#xff1a;大自然&#xff08;风&#xff09;、抽屉门松掉的抽屉 实验 1、找一个大风的日子&#xff0c;打开窗户&#xff08;不要找下雨天&#xff0c;不然你会被你亲爱的嫲嫲KO&#xff09; 2、让风在抽屉面前刮过 3、你发现了什么&#xff1f;&#xff1f;&…

Baumer工业相机堡盟工业相机如何联合NEOAPI SDK和OpenCV实现相机图像转换为Mat图像格式(C#)

Baumer工业相机堡盟工业相机如何通过NEOAPI SDK实现相机掉线自动重连&#xff08;C#&#xff09; Baumer工业相机Baumer工业相机的图像转换为OpenCV的Mat图像的技术背景在NEOAPI SDK里实现相机图像转换为Mat图像格式联合OpenCV实现相机图像转换为Mat图像格式测试演示图 工业相机…