Python 数据类型

Python 是一种通用的编程语言,以其易用性和简洁语法而闻名。它提供了多种数据类型来表示和操作数据,每种类型都有其独特的特性和用途。本文主要介绍Python中的数据类型,包括内置数据类型、获取数据类型、设置数据类型、设置特定的数据类型,以及相关的示例代码 。

1、内置数据类型

使用变量存储数据时,为了更充分利用内存空间,我们可以为变量指定不同的数据类型。并且不同类型可以执行不同的操作。Python默认具有以下内置数据类型:

字符串类型str

数值类型 intfloat, complex

序列类型: listtuple range

映射类型 dict

集合类型: set frozenset

布尔值类型 bool

二进制类型: bytesbytearray memoryview

注意:Python 中,NoneType 是一种特殊的数据类型,它只有一个值,即 NoneNone通常用于表示“无值”或“空值”的情况。

2、使用type()获取变量的数据类型

可以使用以下type()函数获取任何对象的数据类型:

例子,

打印输出变量x的数据类型:

x = 5
print(type(x))

以下是Python中所有内置数据类型:

例如:

print(type("Hello"))
print(type(3))
print(type(3.14))
print(type(1j))
print(type(["c", "java", "python"]))
print(type(("c", "java", "python")))
print(type(range(6))) print(type({"name" : "python", "age" : 12})) print(type({"c", "java", "python"}))
print(type(frozenset({"c", "java", "python"})))
print(type(True)) print(type(b"Hello")) print(type(bytearray(5))) print(type(memoryview(bytes(5))))

3、指定变量数据类型

在Python中,当将值分配给变量时,将设置数据类型:

示例

数据类型

x = "Hello World"

str

x = 20

int

x = 20.5

float

x = 1j

complex

x = ["c", "python", "java"]

list

x = ("c", "python", "java")

tuple

x = range(6)

range

x = {"name" : "python", "age" : 20}

dict

x = {"c", "python", "java"}

set

x = frozenset({"c", "python", "java"})

frozenset

x = True

bool

x = b"Hello"

bytes

x = bytearray(5)

bytearray

x = memoryview(bytes(5))

memoryview

4、通过构造函数指定数据类型

如果要指定数据类型,则可以使用以下构造函数:

示例

数据类型

x = str("Hello World")

str

x = int(20)

int

x = float(20.5)

float

x = complex(1j)

complex

x = list(("c", "python", "java"))

list

x = tuple(("c", "python", "java"))

tuple

x = range(6)

range

x = dict(name="cjavapy", age=3)

dict

x = set(("c", "java", "python"))

set

x = frozenset(("c", "python", "java"))

frozenset

x = bool(5)

bool

x = bytes(5)

bytes

x = bytearray(5)

bytearray

x = memoryview(bytes(5))

memoryview

5、NoneType类型

Python 中,NoneType 是一种特殊的数据类型,它只有一个值,即 NoneNone通常用于表示“无值”或“空值”的情况。

# 初始化一个变量为 None
x = None
print(x)  # 输出: None

# 检查变量是否为 None
if x is None:
    print("x 是 None")
else:
    print("x 不是 None")

# 函数返回 None 示例
def example_function():
    print("这是一个示例函数")
    return None

result = example_function()
print(result)  # 输出: None

# 将 None 用作默认参数
def greet(name=None):
    if name is None:
        print("Hello, Stranger!")
    else:
        print(f"Hello, {name}!")

greet()       # 输出: Hello, Stranger!
greet("Alice")  # 输出: Hello, Alice!

6、Python常用数据类型示例

为了更好地理解 Python 中的数据类型及其用法,常用数据类型示例代码如下:

shoplist = ['apple', 'mango', 'carrot', 'banana']

print('我有', len(shoplist), '样物品要购买。')
print('这些物品是:', end='')
for item in shoplist:
    print(item, end=' ')

print('\n我还需要买米。')
shoplist.append('rice')
print('我的购物清单现在是', shoplist)

print('我现在要对购物清单进行排序')
shoplist.sort()
print('排序后的购物清单是', shoplist)

print('我将购买的第一样物品是', shoplist[0])
olditem = shoplist[0]
del shoplist[0]
print('我买了', olditem)
print('我的购物清单现在是', shoplist)

zoo = ('python', 'elephant', 'penguin')
print('动物园里有', len(zoo), '种动物')

new_zoo = 'monkey', 'camel', zoo
print('新动物园里有', len(new_zoo), '个笼子')
print('新动物园里的所有动物有', new_zoo)
print('从旧动物园带来的动物有', new_zoo[2])
print('从旧动物园带来的最后一只动物是', new_zoo[2][2])
print('新动物园里的动物总数是', len(new_zoo) - 1 + len(new_zoo[2]))

ab = {
    'Swaroop': 'Swaroop@Swaroopch.com',
    'Larry': 'larry@wall.org',
    'Matsumoto': 'matz@ruby-lang.org',
    'Spammer': 'spammer@hotmail.com'
}

print("Swaroop的地址是", ab['Swaroop'])

del ab['Spammer']

print('\n通讯录中有 {0} 个联系人\n'.format(len(ab)))

for name, address in ab.items():
    print('联系 {0} 的地址是 {1}'.format(name, address))

ab['Guido'] = 'guido@python.org'

if 'Guido' in ab:
    print("\nGuido的地址是", ab['Guido'])

name = 'Swaroop'

print('第0项是', shoplist[0])
print('第1项是', shoplist[1])
print('第2项是', shoplist[2])
print('第3项是', shoplist[3])
print('倒数第1项是', shoplist[-1])
print('倒数第2项是', shoplist[-2])
print('第0个字符是', name[0])

print('第1到3项是', shoplist[1:3])
print('第2项到最后是', shoplist[2:])
print('第1项到倒数第1项是', shoplist[1:-1])
print('从头到尾所有项是', shoplist[:])

print('第1到3个字符是', name[1:3])
print('第2个字符到最后是', name[2:])
print('第1个字符到倒数第1个字符是', name[1:-1])
print('从头到尾所有字符是', name[:])

bri = set(['brazil', 'russia', 'India', 'China'])
print('India' in bri)
推荐阅读
cjavapy编程之路首页