你不可能还不会python变量的类型吧?
off999 2024-09-16 00:42 23 浏览 0 评论
变量只不过是用于存储值的保留内存位置。这意味着当您创建一个变量时,您会在内存中保留一些空间。
根据变量的数据类型,解释器分配内存并决定可以在保留内存中存储什么。因此,通过为变量分配不同的数据类型,您可以在这些变量中存储整数、小数或字符。
为变量赋值
Python 变量不需要显式声明来保留内存空间。当您为变量赋值时,声明会自动发生。等号 (=) 用于为变量赋值。
= 运算符左侧的操作数是变量的名称,= 运算符右侧的操作数是存储在变量中的值。例如 -
现场演示
#!/usr/bin/python
counter = 100 # An integer assignment
miles = 1000.0 # A floating point
name = "John" # A string
print counter
print miles
print name
在这里,100、1000.0 和“John”分别是分配给counter、miles和name变量的值。这会产生以下结果 -
100
1000.0
John
多重赋值
Python 允许您同时为多个变量分配一个值。例如 -
a = b = c = 1
在这里,创建了一个值为 1 的整数对象,并将所有三个变量分配到相同的内存位置。您还可以将多个对象分配给多个变量。例如 -
a,b,c = 1,2,"john"
这里,两个值为 1 和 2 的整数对象分别分配给变量 a 和 b,一个值为“john”的字符串对象分配给变量 c。
标准数据类型
存储在内存中的数据可以有多种类型。例如,一个人的年龄存储为一个数值,他或她的地址存储为字母数字字符。Python 有各种标准数据类型,用于定义对它们可能进行的操作以及每种数据的存储方法。
Python 有五种标准数据类型 -
- 数字
- 细绳
- 列表
- 元组
- 字典
Python 数字
数字数据类型存储数值。Number 对象是在您为其赋值时创建的。例如 -
var1 = 1
var2 = 10
您还可以使用 del 语句删除对数字对象的引用。del 语句的语法是 -
del var1[,var2[,var3[....,varN]]]]
您可以使用 del 语句删除单个对象或多个对象。例如 -
del var
del var_a, var_b
Python 支持四种不同的数值类型 -
- int(有符号整数)
- long(长整数,也可以用八进制和十六进制表示)
- float(浮点实数值)
- 复数(复数)
例子
以下是一些数字示例 -
整数 | 长 | 漂浮 | 复杂的 |
10 | 51924361L | 0.0 | 3.14j |
100 | -0x19323L | 15.20 | 45.j |
-786 | 0122L | -21.9 | 9.322e-36j |
080 | 0xDEFABCECBDAECBFBAEl | 32.3+e18 | .876j |
-0490 | 535633629843L | -90。 | -.6545+0J |
-0x260 | -052318172735L | -32.54e100 | 3e+26J |
0x69 | -4721885298529L | 70.2-E12 | 4.53e-7j |
- Python 允许您将小写的 l 与 long 一起使用,但建议您仅使用大写的 L 以避免与数字 1 混淆。Python 使用大写的 L 显示长整数。
- 复数由一对有序的实数浮点数组成,用 x + yj 表示,其中 x 和 y 是实数,j 是虚数单位。
Python 字符串
Python 中的字符串被标识为引号中表示的一组连续字符。Python 允许使用成对的单引号或双引号。可以使用切片运算符([ ] 和 [:] )获取字符串的子集,索引从字符串开头的 0 开始,最后从 -1 开始。
加号 (+) 是字符串连接运算符,星号 (*) 是重复运算符。例如 -
现场演示
#!/usr/bin/python
str = 'Hello World!'
print str # Prints complete string
print str[0] # Prints first character of the string
print str[2:5] # Prints characters starting from 3rd to 5th
print str[2:] # Prints string starting from 3rd character
print str * 2 # Prints string two times
print str + "TEST" # Prints concatenated string
这将产生以下结果 -
Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!TEST
Python 列表
列表是 Python 中最通用的复合数据类型。列表包含用逗号分隔并括在方括号 ([]) 中的项目。在某种程度上,列表类似于 C 中的数组。它们之间的一个区别是属于列表的所有项目可以是不同的数据类型。
可以使用切片运算符([ ] 和 [:])访问存储在列表中的值,索引从列表开头的 0 开始,并以它们的方式结束 -1。加号 (+) 是列表连接运算符,星号 (*) 是重复运算符。例如 -
#!/usr/bin/python
list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']
print list # Prints complete list
print list[0] # Prints first element of the list
print list[1:3] # Prints elements starting from 2nd till 3rd
print list[2:] # Prints elements starting from 3rd element
print tinylist * 2 # Prints list two times
print list + tinylist # Prints concatenated lists
这会产生以下结果 -
['abcd', 786, 2.23, 'john', 70.2]
abcd
[786, 2.23]
[2.23, 'john', 70.2]
[123, 'john', 123, 'john']
['abcd', 786, 2.23, 'john', 70.2, 123, 'john']
Python 元组
元组是另一种类似于列表的序列数据类型。元组由多个用逗号分隔的值组成。然而,与列表不同的是,元组用括号括起来。
列表和元组之间的主要区别是:列表括在方括号 ( [ ] ) 中,并且它们的元素和大小可以更改,而元组括在括号 ( ( ) ) 中并且不能更新。元组可以被认为是只读列表。例如 -
现场演示
#!/usr/bin/python
tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )
tinytuple = (123, 'john')
print tuple # Prints the complete tuple
print tuple[0] # Prints first element of the tuple
print tuple[1:3] # Prints elements of the tuple starting from 2nd till 3rd
print tuple[2:] # Prints elements of the tuple starting from 3rd element
print tinytuple * 2 # Prints the contents of the tuple twice
print tuple + tinytuple # Prints concatenated tuples
这会产生以下结果 -
('abcd', 786, 2.23, 'john', 70.2)
abcd
(786, 2.23)
(2.23, 'john', 70.2)
(123, 'john', 123, 'john')
('abcd', 786, 2.23, 'john', 70.2, 123, 'john')
以下代码对元组无效,因为我们试图更新一个元组,这是不允许的。列表可能会出现类似情况 -
#!/usr/bin/python
tuple = ( 'abcd', 786 , 2.23, 'john', 70.2 )
list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tuple[2] = 1000 # Invalid syntax with tuple
list[2] = 1000 # Valid syntax with list
Python字典
Python 的字典是一种哈希表类型。它们像 Perl 中的关联数组或散列一样工作,由键值对组成。字典键几乎可以是任何 Python 类型,但通常是数字或字符串。另一方面,值可以是任意 Python 对象。
字典用大括号 ({ }) 括起来,并且可以使用方括号 ([]) 分配和访问值。例如 -
现场演示
#!/usr/bin/python
dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}
print dict['one'] # Prints value for 'one' key
print dict[2] # Prints value for 2 key
print tinydict # Prints complete dictionary
print tinydict.keys() # Prints all the keys
print tinydict.values() # Prints all the values
这会产生以下结果 -
This is one
This is two
{'dept': 'sales', 'code': 6734, 'name': 'john'}
['dept', 'code', 'name']
['sales', 6734, 'john']
字典没有元素之间的顺序概念。说元素“乱序”是不正确的;它们只是无序的。
数据类型转换
有时,您可能需要在内置类型之间执行转换。要在类型之间进行转换,您只需将类型名称用作函数。
有几个内置函数可以执行从一种数据类型到另一种数据类型的转换。这些函数返回一个表示转换后的值的新对象。
编号 | 功能说明 |
1 | 整数(x [,基数]) 将 x 转换为整数。如果 x 是字符串,base 指定基数。 |
2 | 长(x [,base] ) 将 x 转换为长整数。如果 x 是字符串,base 指定基数。 |
3 | 浮动(x) 将 x 转换为浮点数。 |
4 | 复数(实数 [,imag]) 创建一个复数。 |
5 | 字符串(x) 将对象 x 转换为字符串表示形式。 |
6 | 代表(x) 将对象 x 转换为表达式字符串。 |
7 | 评估(字符串) 计算一个字符串并返回一个对象。 |
8 | 元组 将 s 转换为元组。 |
9 | 列表 将 s 转换为列表。 |
10 | 套) 将 s 转换为集合。 |
11 | 听写(d) 创建字典。d 必须是 (key,value) 元组的序列。 |
12 | 冻结集 将 s 转换为冻结集。 |
13 | chr(x) 将整数转换为字符。 |
14 | unichr(x) 将整数转换为 Unicode 字符。 |
15 | 排序(x) 将单个字符转换为其整数值。 |
16 | 十六进制(x) 将整数转换为十六进制字符串。 |
17 | 八月(x) 将整数转换为八进制字符串。 |
相关推荐
- python import 出现 ModuleNotFoundError 解决方法
-
错误的原因是你的Python环境没有正确安装库文件。本文以Scapy为例,给出详细方案:1.确认是否成功安装Scapy运行以下命令检查Scapy是否已安装:pip3list|gre...
- Github 7.4k star,一个强大的 Python 库-sh!
-
大家好,今天为大家分享一个强大的Python库-sh。Github地址:https://github.com/amoffat/shsh库是Python生态系统中一个专门用于执行系统命令的第三方...
- 学习编程第148天 python编程循环的嵌套使用
-
今天学习的是刘金玉老师零基础Python教程第32期,主要内容是python编程循环的嵌套使用。(一)一维数组及输出#一维数组list1=["110001","四川二流子...
- 2025-07-09:使数组元素互不相同所需的最少操作次数。用go语言,
-
2025-07-09:使数组元素互不相同所需的最少操作次数。用go语言,给定一个整数数组nums和一个整数k,对于数组中的每个元素,你最多可以对其进行一次操作:将一个在区间[-k,k]内的...
- python数据分析numpy基础之max求数组最大值
-
1python数据分析numpy基础之max求数组最大值python的numpy库的max()函数,用于计算沿指定轴(一个轴或多个轴)的最大值。用法numpy.max(a,axis=None,...
- 加快Python算法的四个方法(四)Dask
-
CDA数据分析师出品相信大家在做一些算法经常会被庞大的数据量所造成的超多计算量需要的时间而折磨的痛苦不已,接下来我们围绕四个方法来帮助大家加快一下Python的计算时间,减少大家在算法上的等待时间。...
- 六十六、Leetcode数组系列(中篇)(leetcode679)
-
@Author:Runsen@Date:2020/6/8人生最重要的不是所站的位置,而是内心所朝的方向。只要我在每篇博文中写得自己体会,修炼身心;在每天的不断重复学习中,耐住寂寞,练就真功,不畏艰难...
- Numpy中的ndarray是什么?('numpy.ndarray' object has no attribute 'append')
-
1.创建ndarray创建数组最简单的办法就是使用array函数。它接受一切序列型的对象(包括其他数组),然后产生一个新的含有传入数据的Numpy数组。np.array会尝试为新建的这个数组推断出一个...
- Python中的数据导入与查询(python怎样导入数据库)
-
适用场景:快速导入文本/Excel数据→Pandas读取大型数值数据→Numpy处理复杂二进制文件→h5py/scipy.io数据库交互→SQLAlchemy+Pandas一、数据...
- 2025-07-02:统计数组中的美丽分割。用go语言,给定一个整数数组
-
2025-07-02:统计数组中的美丽分割。用go语言,给定一个整数数组nums,我们要把它划分成三个连续且非空的子数组nums1、nums2、nums3,且这三个子数组按顺序拼接后还原为原数组...
- 2025-07-10:字符相同的最短子字符串Ⅰ。用go语言,给定一个长度
-
2025-07-10:字符相同的最短子字符串Ⅰ。用go语言,给定一个长度为n的二进制字符串s和一个允许执行的最大操作次数numOps。每次操作可以选择字符串中的任意一个位置i(0≤i...
- 2025-06-19:识别数组中的最大异常值。用go语言,你有一个长度为
-
2025-06-19:识别数组中的最大异常值。用go语言,你有一个长度为n的整数数组nums,其中恰好有n-2个元素属于“特殊数字”类别。剩下的两个元素中,一个等于所有这些特殊数字的总和,另...
- 2025-06-28:长度可被 K 整除的子数组的最大元素和。用go语言,给
-
2025-06-28:长度可被K整除的子数组的最大元素和。用go语言,给定一个整数数组nums和一个整数k,求nums中长度为k的倍数的非空子数组中,子数组和的最大值。返回该最大和...
- 在 Python 中如何向一个已排序的数组(列表) 中插入一个数呢
-
在Python中如何向一个已排序的数组(列表)中插入一个数呢?方法有很多种,关键在于原来数组是什么样的排序,用到啥排序方法效率高,就用哪种。我们来练习其中的几种插入方法,另外也掌握下遍历数组的...
- 2025-07-04:统计符合条件长度为 3 的子数组数目。用go语言,给定
-
2025-07-04:统计符合条件长度为3的子数组数目。用go语言,给定一个整数数组nums,请你计算有多少个长度恰好为3的连续子数组满足这样的条件:子数组的第一个元素与第三个元素的和,正好...
你 发表评论:
欢迎- 一周热门
- 最近发表
-
- python import 出现 ModuleNotFoundError 解决方法
- Github 7.4k star,一个强大的 Python 库-sh!
- 学习编程第148天 python编程循环的嵌套使用
- 2025-07-09:使数组元素互不相同所需的最少操作次数。用go语言,
- python数据分析numpy基础之max求数组最大值
- 加快Python算法的四个方法(四)Dask
- 六十六、Leetcode数组系列(中篇)(leetcode679)
- Numpy中的ndarray是什么?('numpy.ndarray' object has no attribute 'append')
- Python中的数据导入与查询(python怎样导入数据库)
- 2025-07-02:统计数组中的美丽分割。用go语言,给定一个整数数组
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python字典遍历 (54)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python读取文件夹下所有文件 (59)
- java调用python脚本 (56)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)