python基本数据类型

python的变量不需要声明,但在使用前必须要赋值

 

多个变量赋值:

a = b = c = 1
x, y, z = 1, True, '大湘菜'

 

python有六个标准的数据类型:

Number、String、Tuple、List、Set、Dictionary,其中前三者为不可变数据,后三者为可变数据

 

Number:

a, b, c, d = 1, 3.21, True, 4+3j
print(type(a), type(b), type(c), type(d))

结果为:

<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>

 

也可以用isinstance()来判断类型:

a = 2
print(isinstance(a, int))

结果为:

True

 

在python中,bool是int的子类,True 和 False 可以和数字相加,True==1、False==0 会返回  True

 

其中is操作符和"=="两者都要求内容相同,且is操作符要求比较的两个对象内存中地址相同

 

可以使用del语句删除对象:

a = 1
print(a)
del a
print(a)

结果报错:

1
Traceback (most recent call last):
  File "D:\Pycharm\pythonProject\main.py", line 4, in <module>
    print(a)
NameError: name 'a' is not defined

 

数值运算:

print(1 / 4)  # 除法,得到一个浮点数
print(3 // 2)  # 除法,得到一个整数
print(7 % 3)  # 取余
print(2 ** 10)  # 乘方

结果为:

0.25
1
1
1024

 

String见上一篇文章

 

List:

myList = ['abcd', 123, 1.23, '大湘菜', 7 + 13j]
print(myList[2:])  # 列表截取
print(myList * 2)  # 输出两次列表
print(myList + myList[3:])  # 连接列表

结果为:

[1.23, '大湘菜', (7+13j)]
['abcd', 123, 1.23, '大湘菜', (7+13j), 'abcd', 123, 1.23, '大湘菜', (7+13j)]
['abcd', 123, 1.23, '大湘菜', (7+13j), '大湘菜', (7+13j)]

列表截取可以接收第三个参数,参数作用是截取的步长。如果第三个参数为负数表示逆向读取

 

Tuple

与列表类似,不同之处在于元组的元素不能修改。写在小括号()里

构造包含 0 个或 1 个元素的元组比较特殊,所以有一些额外的语法规则:

tup1 = ()    # 空元组
tup2 = (20,) # 一个元素,需要在元素后添加逗号

 

String、List 和 Tuple 都属于 sequence(序列)

 

Set

基本功能是进行成员关系测试和删除重复元素,写在大括号{}里

names = {'微湘菜', '小湘菜', '大湘菜', '巨湘菜', '大湘菜'}
print(names)  # 输出集合,重复的元素被自动去掉
# 成员测试
if '大湘菜' in names:
    print('大湘菜在集合中')
else:
    print('大湘菜不在集合中')
# set可以进行集合运算
a = set('123abc')
b = set('135acd')
print(a)
print(a - b)  # a 和 b 的差集
print(a | b)  # a 和 b 的并集
print(a & b)  # a 和 b 的交集
print(a ^ b)  # a 和 b 中不同时存在的元素

结果为:

{'大湘菜', '微湘菜', '小湘菜', '巨湘菜'}
大湘菜在集合中
{'a', '3', 'b', '2', '1', 'c'}
{'2', 'b'}
{'5', 'a', '3', 'd', 'b', '2', '1', 'c'}
{'c', '1', 'a', '3'}
{'5', 'd', 'b', '2'}

 

Dictionary

字典是无序的键值对的集合,字典当中的元素是通过键来存取:

dict = {}
dict['name'] = "大湘菜"
dict[0] = "小湘菜"
print(dict['name'])  # 输出键为 'name' 的值
print(dict)  # 输出完整的字典
print(dict.keys())  # 输出所有键
print(dict.values())  # 输出所有值

结果为:

大湘菜
{'name': '大湘菜', 0: '小湘菜'}
dict_keys(['name', 0])
dict_values(['大湘菜', '小湘菜'])

 

dict()函数可以之间从键值对序列中构造字典

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python基本数据类型 - Python技术站

(0)
上一篇 2023年4月2日
下一篇 2023年4月2日

相关文章

  • 如何使用appnium爬取视频数据

    要先安装Appium,并用它来查找对应元素的id、xpath等信息   from appium import webdriver from appium.webdriver.extensions.android.nativekey import AndroidKey from selenium.webdriver.common.by import By im…

    Python开发 2023年4月2日
    00
  • python输入和输出

    输出 1、表达式语句 2、print() 3、write() 美化输出格式 repr()产生一个解释器易读的表达形式: a = ‘the sea has bank\nmy love is boundless’ print(a) print(repr(a)) # 可以转义特殊字符 结果为: the sea has bank my love is boundle…

    Python开发 2023年4月2日
    00
  • python面向对象

    传统的结构化设计方法的基本点是面向过程,系统被分解成若干个过程。而面向对象的方法是采用构造模型的观点,在系统的开发过程中,各个步骤的共同的目标是建造一个问题域的模型。在面向对象的设计中,初始元素是对象,然后将具有共同特征的对象归纳成类,组织类之间的等级关系,构造类库。在应用时,在类库中选择相应的类 面向对象编程的主要思想是把构成问题的各个事务分解成各个对象,…

    Python开发 2023年4月2日
    00
  • python运算符

    算术运算符: + – * / % ** //   比较运算符: == != > < >= <=   赋值运算符: = += -= *= /= %= **= //= :=(海象运算符)   其中海象运算符用于在表达式内部为变量赋值: name = ‘大湘菜’ if n := len(name) < 4: print(‘a nice…

    Python开发 2023年4月2日
    00
  • pythonFile方法

    open()方法用于打开一个文件,并返回文件对象,注意最后一定要关闭文件对象,即调用close()方法 一般形式为: open(file, mode= , buffering= , encoding= , errors= , newline= , closefd= , opener= )   参数说明: file: 必需,文件路径(相对或者绝对路径) mod…

    Python开发 2023年4月2日
    00
  • python命名空间和作用域

    命名空间是从名称到对象的映射,大部分的命名空间都是通过 Python 字典来实现的   命名空间查找顺序:局部命名空间、全局命名空间、内置命名空间   相同的对象名称可以存在于多个命名空间中   作用域就是一个可以直接访问命名空间的正文区域。程序的变量并不是在哪个位置都可以访问的,访问权限决定于这个变量是在哪里赋值的。变量的作用域决定了在哪一部分程序可以访问…

    Python开发 2023年4月2日
    00
  • python循环语句

    while循环 一般形式: while condition:   statement1 else:   statement2   a = 0 while a < 3: print(a) a = a + 1 else: print(a, ” 大于或等于3″) 结果为: 0 1 2 3 大于或等于3   无限循环: while True: # 或者一个永远…

    Python开发 2023年4月2日
    00
  • python迭代器和生成器

    iter()用于创建迭代器,next()用于输出迭代器的下一个元素: names = [‘微湘菜’, ‘小湘菜’, ‘大湘菜’, ‘巨湘菜’] iterName = iter(names) for i in range(4): print(next(iterName)) 结果为: 微湘菜 小湘菜 大湘菜 巨湘菜   创建一个迭代器需要在类中实现两个方法 __…

    Python开发 2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部