Python变量
一、变量的定义
- 变量名的命名规范:变量名是标识符的一种,变量名不能随便起,要遵守 Python 标识符命名规范。
## 常用的命名规范有以下几种:
1. 变量名为单个单词的话全部小写
name = "张三"
2. 多个单词组成的话,多个单词也都是全部小写再用 _ 拼接在一起
host_name = "localhost"
3. 单词加数字的组合
name1 = "李四"## 不合规的命名格式
1. 不能以数字开头
1name = ""
2. 不能使用保留字作为标识符
global = ""
3. 不能包含空格、@、% 以及 $ 等特殊字符
$name = ""## 一些特殊的命名格式
1.以单下划线开头的标识符,表示不能直接访问的类属性,其无法通过 from...import* 的方式导入
_name = ""
2.以双下划线开头的标识符表示类的私有成员,无法在类的外部调用
__name = ""
3.以双下划线作为开头和结尾的标识符是专用标识符。
__name__ == '__main__'
4.允许使用汉字作为标识符,尽量不要使用
姓名 = ""
- 变量的声明:Python 是弱类型的语言,在定义变量的时候,无须像强类型语言(C语言、C++、Java )等在定义变量的时候必须先指定变量的数据类型,Python 可以直接赋值。
## Java定义变量
int n = 10;## Python定义变量
n = 10
- 变量的赋值:Python 使用等号
=
作为赋值运算符,变量的值一旦被修改,之前的值就被覆盖掉。
1.将10赋值给变量n
n = 10
2.变量的值不是一成不变的,它可以随时被修改,只要重新赋值即可
n = 20
3.可以将不同类型的数据赋值给同一个变量
n = "hello"
4.除了赋值单个数据,还可以将表达式的运行结果赋值给变量
n = 10 + 20
二、变量的数据类型
- 整数类型(int):包括正整数、0 和负整数。有些强类型的编程语言会提供多种整数类型,每种类型的长度都不同,能容纳的整数的大小也不同,例如Java语言提供了 short、int、long。而 Python 则不同,它的整数不分类型,或者说它只有一种int类型的整数,整数的取值范围是无限的,不管多大或者多小的数字,Python 都能轻松处理。
## 将0赋值给变量num
num = 0
## 将一个很大的值赋值给变量num
num = 99999999999999999
## 将一个很小的值赋值给变量num
num = -9999999999999999
- 小数类型(float):Python 只有一种小数类型,就是 float。Java语言有两种小数类型,分别是 float 和 double。
## 十进制形式
f1 = 2.5
f2 = 0.1256584## 指数形式,aEn 或 aen,a 为尾数部分,是一个十进制数;n 为指数部分,是一个十进制整数;
## E或e是固定的字符,用于分割尾数部分和指数部分。
f3 = 2.5e4
- 复数类型(complex):由实部(real)和虚部(imag)构成,在 Python 中,复数的虚部以j或者J作为后缀。
## 复数格式: a + bj a 表示实部,b 表示虚部。
c1 = 2 + 0.2j
c2 = 5 - 0.5j
#对复数进行简单计算
print("c1+c2: ", c1+c2)
print("c1*c2: ", c1*c2)
## 运行结果:
c1+c2: (7-0.3j)
c1*c2: (10.1+0j)
- 字符串(string):若干个字符的集合就是一个字符串,字符串必须由双引号" "或者单引号’ '包围。
1.对字符串中包含的单引号' 或者双引号" 需要使用反斜杠\进行转义
str = 'I\'m ok!'2.使用不同的引号包围字符串
str = "I'm ok!"3.要想换行书写一个比较长的字符串,必须在行尾添加反斜杠\
str = "hello" \"I'm ok!"4.表达式的换行也需要在行尾添加反斜杠\
num = 2 + 8 / 4 + \2 * 55.长字符串由三个双引号"""或者三个单引号'''包围的话,行尾不需要加\,且长字符串中的换行、空格、缩进等空白符都会原样输出
str = """hello
I'm ok!"""6.在普通字符串或者长字符串的开头加上r前缀,就变成了原始字符串
str = r'D:\Program Files\Python'7.原始字符串中的反斜杠仍然会对引号进行转义,因此原始字符串的结尾处不能是反斜杠
str = r'D:\Program Files\Python\' ## 这样写编译就会报错,字符串结尾处的引号会被转义,导致字符串不能正确结束
str = r'D:\Program Files\Python' '\\' ## 先写了一个原始字符串,紧接着又使用'\\'经过转义后得到\字符,最后将两者拼接在一起
- 字节串(bytes):只负责以字节序列的形式(二进制形式)来存储数据,bytes 类型的数据非常适合在互联网上传输,可以用于网络通信编程,还可以用来存储图片、音频、视频等二进制格式的文件。
1.创建空 bytes
b1 = bytes() 或者通过空字符串 b2 = b''2.通过b前缀将字符串转换成 bytes
b3 = b'hello world'3.通过 bytes() 方法并指定字符集将字符串转换成 bytes
b4 = bytes('hello world', encoding='UTF-8')4.通过 encode() 方法并指定字符集将字符串转换成 bytes
b5 = "您好!".encode('UTF-8')5.通过 decode() 方法将 bytes 对象转换为字符串
str = b5.decode('UTF-8')
- 布尔类型(bool):用来表示真(对)或假(错),如果这个事情是正确的,用 True(或 1)代表;如果这个事情是错误的,用 False(或 0)代表。
1.用于比较两个数的大小的结果
>>> 2>1
True
>>> 2>5
False2.当作整数使用(尽量不要这么使用)
>>> False+1
1
>>> True+1
2
- 数据类型转换:Python 已经为我们提供了多种可实现数据类型转换的函数。
1.将 x 转换成整数类型
num = int(x)
2.将 x 转换成浮点数类型
f1 = float(x)
3.将 x 转换为字符串
str1 = str(x)
4.将整数 x 转换为一个字符
c1 = chr(x)
5.将一个字符 x 转换为它对应的整数值
n2 = ord(x)
6.将一个整数 x 转换为一个十六进制字符串
str2 = hex(x)
7.将一个整数 x 转换为一个八进制的字符串
str3 = oct(x)
- 格式化字符串:通常使用以%开头的占位符对各种类型的数据进行格式化输出。常用的转换说明符有:
(1)%d、%i
:将被十进制整数替换;
(2)%o
:将被八进制整数替换;
(3)%x、%X
:将被十六进制整数替换;
(4)%s
:将被字符串替换;
(5)%f、%F
:将被十进制浮点数替换;
(6)%e
:将被科学计数法表示的浮点数(e 小写)替换;
(7)%E
:将被科学计数法表示的浮点数(E 小写)替换;
1.将格式化字符串中的占位符,替换成变量的值
age = 18
print("I'm %d years old!" % age) ## 双引号中的是要格式化输出的字符串,后面的 % 是分隔符,分隔符后面的是表达式2.格式化字符串中也可以包含多个占位符,这个时候也得提供多个表达式,多个表达式必须使用小括号( )包围起来
name = "小米"
age = 18
addr = "中国深圳"
print("%s已经%d岁了,他家在%s。" % (name, age, addr) )3.指定最小输出宽度,在占位符的%后面加上指定的宽度数
str = "abcde"
print("最小输出宽度指定为3: %3s" % str)
print("最小输出宽度指定为10: %10s" % str)
注意:
这里当数据的实际宽度小于指定宽度时,会在左侧以空格补齐;当数据的实际宽度大于指定宽度时,会按照数据的实际宽度输出。4.指定对齐方式,在占位符的%后面加上指定的对齐标志符:
- 代表左对齐;
+ 代表数字总要带着符号;
0 代表宽度不足时补充 0,而不是补充空格。
## 最小宽度为8,左对齐,带上符号,宽度不足时补充 0
n = 12345
print("最小宽度为8,左对齐,带上符号,宽度不足时补充0: %-+08d" % n)5.指定小数精度,在小数的 . 后面加上小数的精度数
f = 3.1415926
## 最小宽度为8,小数点后保留3位,左边补0,带符号
print("%+08.3f" % f)
- 转义字符:以反斜杠\开头的字符,\ 的作用主要是将普通含义的字符转换成特殊含义字符或者将一些有特殊含义的字符转换成普通的字符输出,常见的转义字符有:
(1)\n
:换行符,将光标位置移到下一行开头。
(2)\r
:回车符,将光标位置移到本行开头。
(3)\t
:水平制表符,也即 Tab 键,一般相当于四个空格。
(4)\b
:退格(Backspace),将光标位置移到前一列。
(5)\\
:反斜线。
(6)\'
:单引号。
(7)\"
:双引号。
(8)\
:在字符串行尾的续行符,即一行未完,转到下一行继续写。
相关文章:

Python变量
一、变量的定义 变量名的命名规范:变量名是标识符的一种,变量名不能随便起,要遵守 Python 标识符命名规范。 ## 常用的命名规范有以下几种: 1. 变量名为单个单词的话全部小写 name "张三" 2. 多个单词组成的话&#…...

准备换工作的看过来~
大家好,最近有不少小伙伴在后台留言,得准备面试了,又不知道从何下手!为了帮大家节约时间,特意准备了一份面试相关的资料,内容非常的全面,真的可以好好补一补,希望大家在都能拿到理想…...

免费AI人工智能在线写作伪原创-百度ai自动写文章
免费伪原创洗稿工具 免费伪原创洗稿工具现在终于推出了!你是否在写作的时候,经常因为缺乏灵感而苦恼?或者,你在撰写文章的时候,发现自己的语言表述不够丰富,缺乏变化,语句重复率太高?…...

互联网摸鱼日报(2023-04-21)
互联网摸鱼日报(2023-04-21) InfoQ 热门话题 3年不用云能节省4亿美元!想知道我们为什么敢不用AWS吗? 华为周红:通过行业大模型促进AI价值创造 建设业务规划、交付和反馈闭环| BizDevOps 公开课 云原生时…...

5.3、web服务器简介HTTP协议
代码地址 5.3、web服务器简介HTTP协议 1.Web-Server(网页服务器)2.HTTP协议(应用层的协议)①简介②概述③工作原理④HTTP请求报文格式⑤HTTP响应报文格式⑥HTTP请求方法⑦HTTP状态码 1.Web-Server(网页服务器) 一个 Web Server …...

【观察】华为:新一代楼宇网络,使能绿建智慧化
“碳达峰”、“碳中和”目标是我国生态文明建设和高质量可持续发展的重要战略安排,将推动全社会加速向绿色低碳转型。作为全球既有建筑和每年新建建筑量最大的国家,大力发展绿色建筑对中国全方位迈向低碳社会、实现高质量发展具有重要意义。 《“十四五”…...

【C# .NET】chapter 13 使用多任务改进性能和可扩展性
目录 一、物理内存和虚拟内存使用(Recorder 类) 二、 对比 string的“”操作与stringbuilder 操作 的处理效率,内存消耗情况, 三、异步运行任务、三种启动任务方法、将上一任务方法处理结果作为参数传给下一任务方法 四、嵌套…...

CA(证书颁发机构)
CA 根证书路径/csk-rootca/csk-ca.pem; ~ 签发数字证书,颁发者信息:(仅包含如下信息) C CN ST China L BeiJing O skills OU Operations Departments CN CSK Global Root CA 1.修改证书的路径以及相关配置 vi /etc/pki/tls/op…...

辛弃疾最有代表性的十首词
辛弃疾的词,风格多样,题材广阔,几乎涉及到生活中的各个方面,从爱国情怀到日常生活,甚至连戒酒这种事都能写入词中。辛弃疾也是两宋词人中,存词最多的作家之一,现存的六百多首作品。 辛弃疾的词…...

MC9S12G128开发板—实现按键发送CAN报文指示小车移动功能
实验环境:MC9S12G128开发板 基本功能:控制开发板上的按键,模拟车辆移动的上下左右四个方位,通过can通信告诉上位机界面,车辆轨迹的移动方位。 1. 1939报文发送的示例代码 MC9S12G128开发板1939协议发送can报文数据的…...

尚融宝22-提交借款申请
目录 一、需求介绍 二、图片上传 (一)前端页面 (二)实现图片上传 三、数据字典展示 (一)后端 (二)前端 四、表单信息提交 (一)后端 1、VO对象&…...

机器学习在生态、环境经济学中的实践技术应用及论文写作
近年来,人工智能领域已经取得突破性进展,对经济社会各个领域都产生了重大影响,结合了统计学、数据科学和计算机科学的机器学习是人工智能的主流方向之一,目前也在飞快的融入计量经济学研究。表面上机器学习通常使用大数据…...

Android硬件通信之 WIFI通信
一,简介 1.1 随着网络的普及和通信技术的发展,网络的传输速度也越来越快,wifi技术也还成为手机设备最基本的配置。我们可以通过wifi实现手机与手机之前的信息传输,当然也可以与任意一台有wifi模块的其它设备传输。 1.2 wifi与蓝…...

面试官:“请描述一下Android系统的启动流程”
作者:OpenGL 前言 什么是Android启动流程呢?其实指的就是我们Android系统从按下电源到显示界面的整个过程。 当我们把手机充好电,按下电源,手机会弹出相应启动界面,在等了一段时间之后,会弹出我们熟悉的主…...

k8s delete node 后 重启kubelet会自己加入到集群 ?
原因 当执行kubectl delete node命令时,Kubernetes API服务器会收到该节点的删除请求,并将其从集群中删除。此时,kubelet服务在该节点上仍然在运行,但已经不再与集群通信。 当您重启kubelet服务时,它会重新向API服务…...

REXROTH液压方向阀安装须知
安装规程 阀安装到系统之前,应该对照订货型号比较其型号说明。 确认阀的连接表面和底板无水分,没有油。 - 清洁: ‧ 安装元件时,确认工业阀和周围干净 ‧ 油箱须密闭,以防止外部污染 ‧ 安装之前&…...

【数据结构实验】哈夫曼树
【数据结构实验】哈夫曼树 简介: 为一个信息收发站编写一个哈夫曼码的编/译码系统。文末贴出了源代码。 需求分析 完整的系统需要具备完整的功能,包含初始化、编码、译码、印代码文件和印哈夫曼树,因此需要进行相应的文件操作进行配合。哈…...

浏览器不好用?插件来帮忙
一、目的 浏览器本身具备的功能并不完善,不同的用户可以为自己浏览器增加想要功能,使得浏览器更能符合自己的需求,提高浏览器使用的舒适度 二、推荐插件 AdblockPlus LastPass(密码记录,全平台通用) Dar…...

Qt Quick - 容器控件综述
Qt Quick - 容器控件综述 一、概述二、ApplicationWindow Control三、Frame Control四、GroupBox Control五、Page Control六、Pane Control七、ScrollView Control八、StackView Control九、SwipeView Control十、TabBarControl十一、ToolBar控件 一、概述 Qt Quick Controls…...

面试题30天打卡-day06
1、什么是反射机制?说说反射机制的优缺点、应用场景? 反射机制:Java的反射机制是在运行状态,对于任意一个类,都能够动态的获得这个类的属性和方法;对于一个对象,都能动态的调用它当中的方法和属…...

Spring Boot的基础使用和< artifactId>spring-boot-maven-plugin</ artifactId>爆红的处理
Spring Boot的基础使用和< artifactId>spring-boot-maven-plugin</ artifactId>爆红的处理 Spring Boot概述 微服务概述 微服务Microservices是一种软件架构风格,他是以专注于单一责任与功能的小型功能区块Small Building Blocks 为基础,…...

项目管理中的必不可少的强大工具有哪些?
在项目管理中,我们总是想寻求一套功能强大的工具,来满足我们多样化的需求。但往往事与愿违,这样强大的工具总是费用高,操作复杂,需安装多个插件。下面,我就给大家推荐一款项目管理软件 ~Zoho Projects&…...

嵌入式学习笔记——SPI通信的应用
SPI通信的应用 前言屏幕分类1.3OLED概述驱动芯片框图原理图通信时序显示的方式页地址、列地址初始化指令 程序设计初始化代码初始化写数据与写命令清屏函数 初始化代码字符显示函数 总结 前言 上一篇中介绍了STM32的SPI通信,并根据框图和寄存器进行了SPI通信的初始…...

.Net下企业应用系统架构构建心得
在开始架构设计之前,需要了解一下架构是什么,按照IEEE标准的定义是: Architecture 是一个系统的基本组织,它蕴含于系统的组件中、组件之间的相互关系中、组件与环境的相互关系中、以及呈现于其设计和演进的原则中。 (The embodied…...

【社区图书馆】关于Mybatis原理学习的读后感
1、为什么会看原理书籍 Mybatis是我们Java后端开发中的主流ORM框架,基本都会在工作中用到。所以,是既熟悉,又陌生。熟悉是因为一直都在使用,而陌生则是对于其内部原理还不够深入。刚好近期的工作中,又遇到了一个需求&a…...

C++ Primer阅读笔记--表达式和运算符的使用
1--左值和右值 C 的表达式有右值(rvalue, are-value)和左值(lvalue, ell-value)两个形式;当一个对象被用作右值时,使用的是对象的值(内容);当对象被用作左值时࿰…...

npm install xxx的执行过程及示例
当你在终端中执行npm install xxx命令时,npm会执行以下步骤来安装软件包: 检查本地npm缓存中是否有该软件包。 如果本地npm缓存中已经存在该软件包,npm将直接从缓存中提取软件包并安装。这将显著加快安装速度,因为npm无需从网络下…...

excel数据分析比赛
基础 sql:百度网盘 请输入提取码 excel函数 <...

Git使用GitHub说明
GitHub为公网代码托管仓库,Git可以将本地仓库推送到GitHub管理。 步骤:1、注册GitHub账号 2、创建仓库(会得到一个仓库地址) 3、推送本地仓库 git remote add origin https://github.com/jianshengchuanqi/xuesezhanjiang.git…...

这些不可不知的JVM知识
JVM是面试中必问的部分,本文通过思维导图以面向面试的角度整理JVM中不可不知的知识。 先上图: JVM必备知识 1、JVM基本概念 1.1、JVM是什么 JVM 的全称是 「Java Virtual Machine」,也就是我们耳熟能详的 Java 虚拟机。 JVM具备着计算机的…...