Python中变量和数据类型介绍
1、变量和数据类型
1.1变量
1.每个变量都存储了一个值——与变量相关联的信息。
2.变量不仅可以为整数或浮点数,还可以是字符串,可以是任意数据类型。
1.1.1变量的命名和使用
变量名只能包含字母、数字和下划线,且数字不能打头。变量名不能包含空格,但可以使用下划线间隔。不能把python关键字和函数名作为变量名。变量名应既简短又具有描述性。慎用小写字母l和大写字母O,因为它们可能被人错看成数字1和0。
1.1.2使用变量时避免命名错误
出现错误时解释器会提供一个traceback(回溯)。Traceback是一条记录,指出了什么地方陷入困境。
1.2字符串str
1.字符串就是一系列字符。是一种数据类型,在Python中用引号括起的都是字符串,可单引号也可双引号。
2.Unicode标准也在不断发展,但最常用的是用两个字节表示一个字符(如果要用到非常偏僻的字符,就需要4个字节)。现代操作系统和大多数编程语言都直接支持Unicode。把Unicode编码转化为“可变长编码”的UTF-8编码。
3.Python对bytes类型的数据用带b前缀的单引号或双引号表示:x = b'ABC'。以Unicode表示的str通过encode()方法可以编码为指定的bytes。
'ABC'.encode('ascii') b'ABC |
反过来,如果我们从网络或磁盘上读取了字节流,那么读到的数据就是bytes。要把bytes变为str,就需要用decode()方法:
b'ABC'.decode('ascii') 'ABC |
4. 对于单个字符的编码,Python提供了ord()函数获取字符的整数表示,chr()函数把编码转换为对应的字符:
>>> ord('A') 65 >>> ord('中') 20013 >>> chr(66) 'B' >>> chr(25991) '文' |
5.要计算str包含多少个字符,可以用len()函数,len()函数计算的是str的字符数,如果换成bytes,len()函数就计算字节数。可见,1个中文字符经过UTF-8编码后通常会占用3个字节,而1个英文字符只占用1个字节。
1.2.1对字符串的操作
1.方法是Python可对数据执行的操作。
2.title()以首字母大写的方式显示每个单词,即将每个单词的首字母都改为大写。
3.upper()将字符串改为全部大写。lower()将字符串改为全部小写。
4.如果字符串至少有一个字母,并且所有字母都是大写或小写,isupper()和 islower()方法就会相应地返回布尔值 True。否则,该方法返回 False。
5.salpha()返回 True,如果字符串只包含字母,并且非空;
6.isalnum()返回 True,如果字符串只包含字母和数字,并且非空;
7.sdecimal()返回 True,如果字符串只包含数字字符,并且非空;
8.sspace()返回 True,如果字符串只包含空格、制表符和换行,并且非空;
9.istitle()返回 True,如果字符串仅包含以大写字母开头、后面都是小写字母的单词。
10.startswith()和 endswith()方法返回 True,如果它们所调用的字符串以该方法传入 的字符串开始或结束。否则,方法返回 False。
11.join()方法在一个字符串上调用,参数是一个字符串列表,返回一个字符串。
>>> ', '.join(['cats', 'rats', 'bats']) 'cats, rats, bats' >>> ' '.join(['My', 'name', 'is', 'Simon']) 'My name is Simon' >>> 'ABC'.join(['My', 'name', 'is', 'Simon']) 'MyABCnameABCisABCSimon' |
12.split()方法做的事情正好相反:它针对一个字符串调用,返回一个字符串列表。也可以向split()方法传入一 个分割字符串,指定它按照不同的字符串分割。
>>> 'My name is Simon'.split() ['My', 'name', 'is', 'Simon'] |
13.rjust()和 ljust()字符串方法返回调用它们的字符串的填充版本,通过插入空格来 对齐文本。这两个方法的第一个参数是一个整数长度,用于对齐字符串。rjust()和 ljust()方法的第二个可选参数将指定一个填充字符,取代空格字符。
>>> 'Hello'.rjust(20, '*') '***************Hello' >>> 'Hello'.ljust(20, '-') 'Hello---------------' |
14.center()字符串方法与 ljust()与 rjust()类似,但它让文本居中,而不是左对齐或右对齐。
15.sort()将字符串排序。
16.请务必注意,Python程序是大小写敏感的,如果写错了大小写,程序会报错。
17.合并——Python使用加号+来合并字符串
|
18.可以在字符串开始的引号之前加上 r,使它成为原始字符串。 “原始字符串”完 全忽略所有的转义字符,打印出字符串中所有的倒斜杠。
>>> print(r'That is Carol\'s cat.') That is Carol\'s cat. |
19.删除空白:方法rstrip()右 lstrip()左 strip()两边
20. 语法错误:是一种时不时会遇到的错误,在用单引号括起的字符串中,如果包含撇号,就将导致错误。双引号不会。
21.Print() 打印,逗号会空一格。
22.pyperclip 模块有 copy()和 paste()函数,可以向计算机的剪贴板发送文本,或从 它接收文本。
23.字符串有个replace()方法
>>> a = 'abc' >>> a.replace('a', 'A') 'Abc' |
1.2.2空值
空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。
1.2.3常量
常量就是不能变的变量,比如常用的数学常数π就是一个常量。在Python中,通常用全部大写的变量名表示常量:PI = 3.14159265359
1.2.4赋值
在Python中,等号=是赋值语句,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的变量:
a = 123 # a是整数 print(a) a = 'ABC' # a变为字符串 print(a) |
赋值语句:a, b = b, a + b
t = (b, a + b) # t是一个tuple a = t[0] b = t[1] |
1.2.5格式化
Python中格式化有两种,第一种用%实现,第二种{ } format格式。
'Hello, %s' % 'world’ |
% 运算符就是用来格式化字符串的。在字符串内部,%s表示用字符串替换,%d表示用整数替换,有几个%?占位符,后面就跟几个变量或者值,顺序要对应好。如果只有一个%?,括号可以省略。常用占位符:
%d 整数 %f 浮点数 %s 字符串 %x 十六进制整数 |
其中,格式化整数和浮点数还可以指定是否补0和整数与小数的位数:
>>> '%2d-%02d' % (3, 1) ' 3-01' >>> '%.2f' % 3.1415926 '3.14' |
如果你不太确定应该用什么,%s永远起作用,它会把任何数据类型转换为字符串。
有些时候,字符串里面的%是一个普通字符,需要转义,用%%来表示一个 % 。
第二种格式化方法,format,通过 {} 来代替 % 。
1、正常使用
>>> print("我叫{},今年{}岁了".format("小李", 20)) 我叫小李,今年20岁了 |
2、还可以通过在括号里填写数字,修改格式化的顺序
>>> print("我叫{1},今年{0}岁了".format("小李", 20)) 我叫20,今年小李岁了 |
3、通过key取变量
>>> print("我叫{name},今年{age}岁了".format(name="小李", age=20)) 我叫小李,今年20岁了 |
1.2.6转义字符
空白——泛指任何非打印字符,如空格、制表符和换行符。
转义字符\可以转义很多字符 \t 制表符 \n 换行
字符\本身也要转义,所以\\表示的字符就是\
如果字符串里面有很多字符都需要转义,Python中可以用r''表示''内部的字符串默认不转义:
>>> print('\\\t\\') \ \ >>> print(r'\\\t\\') \\\t\\ |
1.3数字
1.3.1整数 int
可以进行四则运算。
计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用0x前缀和0-9,a-f表示,例如:0xff00,0xa5b4c3d2,等。
整数的除法是精确的。在Python中,有两种除法,一种除法是/ , /除法计算结果是浮点数,即使是两个整数恰好整除,结果也是浮点数。还有一种除法是//,称为地板除,两个整数的除法仍然是整数。
% 取余数。
1.3.2浮点数float
Python将带小数的数字都称为浮点数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是完全相等的。
对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等。
1.3.3使用函数str()避免错误
数据类型检查可以用内置函数isinstance()实现:
def my_abs(x): if not isinstance(x, (int, float)): raise TypeError('bad operand type') if x >= 0: return x else: return -x |
1.4注释
1. 以#开头的语句是注释,注释是给人看的,可以是任意内容,解释器会忽略掉注释。其他每一行都是一个语句,当语句以冒号:结尾时,缩进的语句视为代码块。
#。。。。。。 |
2.由于Python源代码也是一个文本文件,所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为UTF-8编码。当Python解释器读取源代码时,为了让它按UTF-8编码读取,我们通常在文件开头写上这两行:
#!/usr/bin/env python3 # -*- coding: utf-8 -*- |
3.文档字符串的注释 ””” ”””
1.5Python之禅
The Zen of Python, by Tim Peters
Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren't special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you're Dutch.
Now is better than never.
Although never is often better than *right* now.
If the implementation is hard to explain, it's a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea -- let's do more of those!
以上是Python中变量和数据类型介绍的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

PHP和Python各有优劣,选择取决于项目需求和个人偏好。1.PHP适合快速开发和维护大型Web应用。2.Python在数据科学和机器学习领域占据主导地位。

在CentOS系统上启用PyTorchGPU加速,需要安装CUDA、cuDNN以及PyTorch的GPU版本。以下步骤将引导您完成这一过程:CUDA和cuDNN安装确定CUDA版本兼容性:使用nvidia-smi命令查看您的NVIDIA显卡支持的CUDA版本。例如,您的MX450显卡可能支持CUDA11.1或更高版本。下载并安装CUDAToolkit:访问NVIDIACUDAToolkit官网,根据您显卡支持的最高CUDA版本下载并安装相应的版本。安装cuDNN库:前

Python和JavaScript在社区、库和资源方面的对比各有优劣。1)Python社区友好,适合初学者,但前端开发资源不如JavaScript丰富。2)Python在数据科学和机器学习库方面强大,JavaScript则在前端开发库和框架上更胜一筹。3)两者的学习资源都丰富,但Python适合从官方文档开始,JavaScript则以MDNWebDocs为佳。选择应基于项目需求和个人兴趣。

Docker利用Linux内核特性,提供高效、隔离的应用运行环境。其工作原理如下:1. 镜像作为只读模板,包含运行应用所需的一切;2. 联合文件系统(UnionFS)层叠多个文件系统,只存储差异部分,节省空间并加快速度;3. 守护进程管理镜像和容器,客户端用于交互;4. Namespaces和cgroups实现容器隔离和资源限制;5. 多种网络模式支持容器互联。理解这些核心概念,才能更好地利用Docker。

MinIO对象存储:CentOS系统下的高性能部署MinIO是一款基于Go语言开发的高性能、分布式对象存储系统,与AmazonS3兼容。它支持多种客户端语言,包括Java、Python、JavaScript和Go。本文将简要介绍MinIO在CentOS系统上的安装和兼容性。CentOS版本兼容性MinIO已在多个CentOS版本上得到验证,包括但不限于:CentOS7.9:提供完整的安装指南,涵盖集群配置、环境准备、配置文件设置、磁盘分区以及MinI

在CentOS系统上进行PyTorch分布式训练,需要按照以下步骤操作:PyTorch安装:前提是CentOS系统已安装Python和pip。根据您的CUDA版本,从PyTorch官网获取合适的安装命令。对于仅需CPU的训练,可以使用以下命令:pipinstalltorchtorchvisiontorchaudio如需GPU支持,请确保已安装对应版本的CUDA和cuDNN,并使用相应的PyTorch版本进行安装。分布式环境配置:分布式训练通常需要多台机器或单机多GPU。所

在CentOS系统上安装PyTorch,需要仔细选择合适的版本,并考虑以下几个关键因素:一、系统环境兼容性:操作系统:建议使用CentOS7或更高版本。CUDA与cuDNN:PyTorch版本与CUDA版本密切相关。例如,PyTorch1.9.0需要CUDA11.1,而PyTorch2.0.1则需要CUDA11.3。cuDNN版本也必须与CUDA版本匹配。选择PyTorch版本前,务必确认已安装兼容的CUDA和cuDNN版本。Python版本:PyTorch官方支

CentOS 安装 Nginx 需要遵循以下步骤:安装依赖包,如开发工具、pcre-devel 和 openssl-devel。下载 Nginx 源码包,解压后编译安装,并指定安装路径为 /usr/local/nginx。创建 Nginx 用户和用户组,并设置权限。修改配置文件 nginx.conf,配置监听端口和域名/IP 地址。启动 Nginx 服务。需要注意常见的错误,如依赖问题、端口冲突和配置文件错误。性能优化需要根据具体情况调整,如开启缓存和调整 worker 进程数量。
