Python学习笔记01

标准数据类型

Python3 中有六个标准的数据类型:

  • Number(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Sets(集合)
  • Dictionary(字典)

Python3 的六个标准数据类型中:

  • 不可变数据(四个):Number(数字)、String(字符串)、Tuple(元组)、Sets(集合);
  • 可变数据(两个):List(列表)、Dictionary(字典)。

sinstance 和 type 的区别

class A:
    pass

class B(A):
    pass

isinstance(A(), A)  # returns True
type(A()) == A      # returns True
isinstance(B(), A)    # returns True
type(B()) == A        # returns False

区别就是:

  • type()不会认为子类是一种父类类型。
  • isinstance()会认为子类是一种父类类型。

List(列表)[ ]

  • 1、List写在方括号之间,元素用逗号隔开。 
    list = [1, 2, 3, 'abc', 'bcd', 'haha']
  • 2、和字符串一样,list可以被索引和切片。
  • 3、List可以使用+操作符进行拼接。
  • 4、List中的元素是可以改变的。

Tuple(元组)( )

元组(tuple)与列表类似,不同之处在于元组的元素和字符串一样不能修改。元组写在小括号 () 里,元素之间用逗号隔开。 


tuple = (1, 2, 3, 'abc')
  • 1、与字符串一样,元组的元素不能修改。
  • 2、元组也可以被索引和切片,方法一样。
  • 3、注意构造包含0或1个元素的元组的特殊语法规则。

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

    tup1 = ()    # 空元组
    tup2 = (20,) # 一个元素,需要在元素后添加逗号
  • 4、元组也可以使用+操作符进行拼接。

Set(集合){ }

# 集合
student = {'Anna', 'Rose', 'Jack', 'Rose'}
print(student)
#集合运算
a = set('abcdefg')
b = set('cdg')
print(a - b)  # ab的差集
print(a | b)  # ab的并集
print(a & b)  # ab的交集
print(a ^ b)  # ab中不同时存在的元素
Dictionary(字典)

列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

  • 1、字典是一种映射类型,它的元素是键值对。
  • 2、字典的关键字必须为不可变类型,且不能重复。
  • 3、创建空字典使用 { }
# 字典
dictionary = {'name':'hourui', 'age':23, 'sex':'female'}
print(dictionary)  # 输出完整字典
print(dictionary.keys())  # 输出所有键
print(dictionary.values())  # 输出所有值

数据类型转换

函数 描述

int(x [,base])

将x转换为一个整数

float(x)

将x转换到一个浮点数

complex(real [,imag])

创建一个复数

str(x)

将对象 x 转换为字符串

repr(x)

将对象 x 转换为表达式字符串

eval(str)

用来计算在字符串中的有效Python表达式,并返回一个对象

tuple(s)

将序列 s 转换为一个元组

list(s)

将序列 s 转换为一个列表

set(s)

转换为可变集合

dict(d)

创建一个字典。d 必须是一个序列 (key,value)元组。

frozenset(s)

转换为不可变集合

chr(x)

将一个整数转换为一个字符

ord(x)

将一个字符转换为它的整数值

hex(x)

将一个整数转换为一个十六进制字符串

oct(x)

将一个整数转换为一个八进制字符串


class A:
    pass

class B(A):
    pass

isinstance(A(), A)  # returns True
type(A()) == A      # returns True
isinstance(B(), A)    # returns True
type(B()) == A        # returns False

区别就是:

  • type()不会认为子类是一种父类类型。
  • isinstance()会认为子类是一种父类类型。

猜你喜欢

转载自blog.csdn.net/weixin_42385291/article/details/80573158