Python基本数据类型

Python数据类型

基本数据类型 Number String Tuple List Dictionary Set
三种不可变 Number String Tuple
三种可变 List Dictionary Set

is 是判断两个标识符是不是引用自一个对象
is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值是否相等。

# 基本数据类型 Number String Tuple List Dictionary Set
# 三种不可变 Number String Tuple
# 三种可变 List Dictionary Set

# Number 类型 -------------------------------
# type()不会认为子类是一种父类类型。
# isinstance()会认为子类是一种父类类型。
# python3中 True为1 FALSE为0
x = 2
print(type(x))
print(isinstance(x, int))  # True
print(True + 1)  # 2
print(False + 1)  # 1
print(type(True))  # <class 'bool'>
print(isinstance(True, bool))  # True

# 2 // 4 # 除法,得到一个整数
# 17 % 3 # 取余
# 2 ** 5 # 乘方


# String 类型 -------------------------------
# 可用 \ 进行转译,字符串开头加上r表示不转译,\ 表示转译换行
str = 'abc\nbcd'
print(str)
str1 = r'abc\nbcd'
print(str1)
str1 = '123' \
       '456'
print(str1)
# 字符串切割 从右往左是负数 从左往右为正数
str2 = '123456'
print(str2[0:3])
print(str2[:-1])
# 字符串不可改变 向自付出中牟一位赋值会报错
# str2[0] = 8

# list 类型 -------------------------------
# 类似于数组,可进行切割修改。列表中元素可为不同类型
l = [1, 2, 3, 'a', True]
print(l)
print(l[0:3])
l[1:3] = []
l[2] = False
print(l)

# 翻转字符串
s = '123456'
s_reverse = s[-1::-1]
s_reverse = ''.join(s_reverse)
print(s_reverse)

# Tuple 类型 -------------------------------
# 与list类型相似,但是Tuple格式中的元素不能修改,但是可以包含可变对象
# 可以索引切片等
tup = (1, 2, 3, '45', [1, 2, 3])
print(tup)
tup[4][0] = 11  # 修改Tuple中的list
print(tup)

# Set 类型 -------------------------------
# 重复的自动删掉
set1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2}
print(set1)
# 可进行集合运算,用()可自动拆解
set2 = set('123456')  # {'1', '4', '3', '6', '2', '5'}
print(set2)
set3 = set('456789')
# set2 = {'123456'}
# set3 = {'456789'}
print(type(set2))
print(set2 - set3)  # 差集
print(set2 | set3)  # 交集
print(set2 & set3)  # 并集
print(set2 ^ set3)  # 不同时在二者中

# Dictionary 类型 -------------------------------
# 无序的 键(key) : 值(value) 的集合
dict = {}
dict['one'] = "1 - 菜鸟教程"
dict[2] = "2 - 菜鸟工具"
print(dict)

tinydict = {'name': 'runoob', 'code': 1, 'site': 'www.runoob.com'}
print(tinydict)
tinydict['name'] = 'test'  # 修改键值对
print(tinydict)
# 获取键值对和值
print(dict.keys())
print(dict.values())

list类型

# 删除list中某个元素
list1 = [1, 2, 3, 4, 5]
del list1[0]
print(list1)

# count 返回某个元素出现多少次
list2 = [1, 1, 1, 2, 2, 3]
print(list2.count(1))

# 遍历多个序列
question = ['name', 'age', 'gender']
answer = ['tom', 20, '男']
for q, a in zip(question, answer):
    print(q, ':', a)

# 反向遍历序列 reversed 翻转
for x in reversed(question):
    print(x)
# 正向遍历序列,先排序
for x in sorted(question):
    print(x)

字典类型

# 遍历字典
knights = {'gallahad': 'the pure', 'robin': 'the brave'}
for k, v in knights.items():
    print(k, v)
for k in knights.keys():
    print(k, knights[k])

类型进制转化

# 类型转换,int(x[,base])转化为十进制数字,默认为十进制,可传入第二个参数base表示第一个参数进制
# 传入第二个参数时第一个参数以字符形式传入
print(int(12.0))
print(int('12', 16))  # 12的十六进制转为十进制
# 整数转八进制 十六进制 chr(97)转相应字符
print(chr(97))
print(oct(17))  # 转八进制
print(hex(17))  # 转十六进制

print(float(12))

# 复数, complex(real[,imag])创建一个复数,第一个参数为实部,第二个参数为虚部
print(complex(1, 2))  # (1+2j)
# 只有实部的时候可以字符串形式传入实部,虚部为0
print(complex('1'))  # complex(1) complex(1, 0)
# 传入字符串 1+2j 中间不能有空格否则报错
print(complex('1+2j'))

#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值