Python学习笔记【第四篇】:基本数据类型

时间:2023-03-08 20:27:08
Python学习笔记【第四篇】:基本数据类型

变量:处理数据的状态

  变量名 = 状态值 类型

python中有以下基本数据类型:

  1:整形

  2:字符串类型

  3:Bool类型

  4:列表

  5:元祖(不可变)

  6:字典(无序)

  7:集合 (无序、不重复)

一、整形 int

# 定义整形
a = 10

  

整形的基本方法:

    def bit_length(self):
""" 返回表示该数字的时占用的最少位数 """ def conjugate(self, *args, **kwargs): # real signature unknown
""" 返回该复数的共轭复数 """ def __abs__(self):
""" 返回绝对值 """ def __cmp__(self, y):
""" 比较两个数大小 """ def __coerce__(self, y):
""" 强制生成一个元组 """ def __divmod__(self, y):
""" 相除,得到商和余数组成的元组 """ def __float__(self):
""" 转换为浮点类型 """ def __getnewargs__(self, *args, **kwargs): # real signature unknown
""" 内部调用 __new__方法或创建对象时传入参数使用 """ def __hash__(self):
"""如果对象object为哈希表类型,返回对象object的哈希值。哈希值为整数。在字典查找中,哈希值用于快速比较字典的键。两个数值如果相等,则哈希值也相等。""" def __hex__(self):
""" 返回当前数的 十六进制 表示 """ def __index__(self):
""" 用于切片,数字无意义 """ def __init__(self, x, base=10): # known special case of int.__init__
""" 构造方法,执行 x = 123 或 x = int(10) 时,自动调用,暂时忽略 """ def __int__(self):
""" 转换为整数 """ def __long__(self):
""" 转换为长整数 """ def __oct__(self):
""" 返回改值的 八进制 表示 """ def __pow__(self, y, z=None):
""" 幂,次方 """ def __str__(self):
"""转换为人阅读的形式,如果没有适于人阅读的解释形式的话,则返回解释器课阅读的形式""" def __trunc__(self, *args, **kwargs):
""" 返回数值被截取为整形的值,在整形中无意义 """

 

二、字符串 string 

# 定义字符串方式
str = "hello world"

  字符串常用方法:

    def capitalize(self):
""" 首字母变大写 """ def center(self, width, fillchar=None):
""" 内容居中,width:总长度;fillchar:空白处填充内容,默认无 """ def count(self, sub, start=None, end=None):
""" 子序列个数 """ def decode(self, encoding=None, errors=None):
""" 解码 """ def encode(self, encoding=None, errors=None):
""" 编码,针对unicode """ def endswith(self, suffix, start=None, end=None):
""" 是否以 xxx 结束 """ def expandtabs(self, tabsize=None):
""" 将tab转换成空格,默认一个tab转换成8个空格 """ def find(self, sub, start=None, end=None):
""" 寻找子序列位置,如果没找到,返回 -1 """ def format(*args, **kwargs): # known special case of str.format
""" 字符串格式化,动态参数,将函数式编程时细说 """ def index(self, sub, start=None, end=None):
""" 子序列位置,如果没找到,报错 """ def isalnum(self):
""" 是否是字母和数字 """ def isalpha(self):
""" 是否是字母 """ def isdigit(self):
""" 是否是数字 """ def islower(self):
""" 是否小写 """ def join(self, iterable):
""" 字符串之间以什么连接 """ def ljust(self, width, fillchar=None):
""" 内容左对齐,右侧填充 """ def lower(self):
""" 变小写 """ def lstrip(self, chars=None):
""" 移除左侧空白 """ def partition(self, sep):
""" 分割,前,中,后三部分 包含分隔符""" def replace(self, old, new, count=None):
""" 替换 """ def rsplit(self, sep=None, maxsplit=None):
"""从右边分割""" def rstrip(self, chars=None):
"""去除右边空格""" def split(self, sep=None, maxsplit=None):
""" 分割, maxsplit最多分割几次 """ def splitlines(self, keepends=False):
""" 根据换行分割 """ def startswith(self, prefix, start=None, end=None):
""" 是否起始 """ def strip(self, chars=None):
""" 移除两段空白 """ def swapcase(self):
""" 大写变小写,小写变大写 """ def translate(self, table, deletechars=None):
"""
转换,需要先做一个对应表,最后一个表示删除字符集合
""" def upper(self):
""" 转小写""" def zfill(self, width):
"""方法返回指定长度的字符串,原字符串右对齐,前面填充0。"""

 

三、布尔值 Bool

  真或假
  1 或 0
# 定义Bool类型方式
b = True
b = False

  

四、列表 list

# 定义列表的方式
li = [0, 1, 2, 3]
# 或者
li = list()

  列表常用方法

    def append(self, p_object): # real signature unknown; restored from __doc__
""" 追加元素 """ def count(self, value): # real signature unknown; restored from __doc__
""" 统计列表元素个数 """ def extend(self, iterable): # real signature unknown; restored from __doc__
""" 合并集合 """ def index(self, value, start=None, stop=None): # real signature unknown; restored from __doc__
""" 返回指定的值索引 """ def insert(self, index, p_object): # real signature unknown; restored from __doc__
""" 在指定的索引处插入 """ def pop(self, index=None): # real signature unknown; restored from __doc__
""" 随机删除 """ def remove(self, value): # real signature unknown; restored from __doc__
""" 移除 """ def reverse(self): # real signature unknown; restored from __doc__
""" 反转输出 """
pass def sort(self, cmp=None, key=None, reverse=False): # real signature unknown; restored from __doc__
""" 按顺序从小到大输出 """ def __len__(self): # real signature unknown; restored from __doc__
""" 返回列表长度 """ def __reversed__(self): # real signature unknown; restored from __doc__
""" 反转输出 """ def __setitem__(self, i, y): # real signature unknown; restored from __doc__

  

五、元祖 tuple 

# 定义元祖方式
t = (1,2,)
# 或者
t = tuple()

 元祖常用方法

    def count(self, value): # real signature unknown; restored from __doc__

    def index(self, value, start=None, stop=None): # real signature unknown; restored from __doc__

    def __add__(self, y): # real signature unknown; restored from __doc__

    def __contains__(self, y): # real signature unknown; restored from __doc__

    def __len__(self): # real signature unknown; restored from __doc__
   

  

六、字典 dict

# 定义字典方式
d = {'张三':19,'李四':20}
# 或者
d = dict()

  字典常用方法

    def clear(self): # real signature unknown; restored from __doc__
""" 清除内容 """ def copy(self): # real signature unknown; restored from __doc__
""" 浅拷贝 """ @staticmethod # known case
def fromkeys(S, v=None): # real signature unknown; restored from __doc__
""" """ def get(self, k, d=None): # real signature unknown; restored from __doc__
""" 根据key获取值,d是默认值 """ def has_key(self, k): # real signature unknown; restored from __doc__
""" 是否有key """ def items(self): # real signature unknown; restored from __doc__
""" 所有项的列表形式 """ def iteritems(self): # real signature unknown; restored from __doc__
""" 项可迭代 """ def iterkeys(self): # real signature unknown; restored from __doc__
""" key可迭代 """ def itervalues(self): # real signature unknown; restored from __doc__
""" value可迭代 """ def keys(self): # real signature unknown; restored from __doc__
""" 所有的key列表 """ def pop(self, k, d=None): # real signature unknown; restored from __doc__
""" 获取并在字典中移除 """ def popitem(self): # real signature unknown; restored from __doc__
""" 获取并在字典中移除 """ def setdefault(self, k, d=None): # real signature unknown; restored from __doc__
""" 如果key不存在,则创建,如果存在,则返回已存在的值且不修改 """ def update(self, E=None, **F): # known special case of dict.update
""" 更新 """ def values(self): # real signature unknown; restored from __doc__
""" 所有的值 """ def viewitems(self): # real signature unknown; restored from __doc__
""" 所有项,只是将内容保存至view对象中 """ def viewkeys(self): # real signature unknown; restored from __doc__
""" D.viewkeys() -> a set-like object providing a view on D's keys """ def viewvalues(self): # real signature unknown; restored from __doc__
""" D.viewvalues() -> an object providing a view on D's values """ def __contains__(self, k): # real signature unknown; restored from __doc__ def __delitem__(self, y): # real signature unknown; restored from __doc__

 七、集合 set

   set集合,是一个无序且不重复的元素集合

   集合常用方法

    def add(self, *args, **kwargs): # real signature unknown
""" 添加元素 """ def clear(self, *args, **kwargs): # real signature unknown
""" 清除内容""" def copy(self, *args, **kwargs): # real signature unknown
""" 浅拷贝 """ def difference(self, *args, **kwargs): # real signature unknown
""" A中存在,B中不存在 """ def difference_update(self, *args, **kwargs): # real signature unknown
""" 从当前集合中删除和B中相同的元素""" def discard(self, *args, **kwargs): # real signature unknown
""" 移除指定元素,不存在不保错 """ def intersection(self, *args, **kwargs): # real signature unknown
""" 交集 """ def intersection_update(self, *args, **kwargs): # real signature unknown
""" 取交集并更更新到A中 """ def isdisjoint(self, *args, **kwargs): # real signature unknown
""" 如果没有交集,返回True,否则返回False""" def issubset(self, *args, **kwargs): # real signature unknown
""" 是否是子序列""" def issuperset(self, *args, **kwargs): # real signature unknown
""" 是否是父序列""" def pop(self, *args, **kwargs): # real signature unknown
""" 移除元素 """ def remove(self, *args, **kwargs): # real signature unknown
""" 移除指定元素,不存在保错 """ def symmetric_difference(self, *args, **kwargs): # real signature unknown
""" 对称差集 """ def symmetric_difference_update(self, *args, **kwargs): # real signature unknown
""" 对称差集,并更新到a中 """ def union(self, *args, **kwargs): # real signature unknown
""" 并集 """ def update(self, *args, **kwargs): # real signature unknown
""" 更新 """
 

  集合的交并差集

# 列表
li_one = [1, 2, 3, 4]
li_two = [1, 4, 5, 6] # 列表转为set集合
set_one = set(li_one)
set_two = set(li_two) # 求交集(两个集合公共的)
print("intersection方法:", set_one.intersection(set_two))
print("&符号:", set_one & set_two) # 求并集(两个集合合并去重)
print("union方法:", set_one.union(set_two))
print("|符号:", set_one | set_two) # 求差集(第一个集合减去第二个集合去除共有的剩下自己的和他有的)
print("difference方法:", set_one.difference(set_two))
print("-符号:", set_one - set_two)

  结果:

Python学习笔记【第四篇】:基本数据类型

引用

在python中,值是靠引用来传递来的。

我们可以用id()来判断两个变量是否为同一个值的引用。 我们可以将id值理解为那块内存的地址标示。

>>> a = 1
>>> b = a
>>> id(a)
13033816
>>> id(b) # 注意两个变量的id值相同
13033816
>>> a = 2
>>> id(a) # 注意a的id值已经变了
13033792
>>> id(b) # b的id值依旧
13033816
>>> a = [1, 2]
>>> b = a
>>> id(a)
139935018544808
>>> id(b)
139935018544808
>>> a.append(3)
>>> a
[1, 2, 3]
>>> id(a)
139935018544808
>>> id(b) # 注意a与b始终指向同一个地址
139935018544808

  Python学习笔记【第四篇】:基本数据类型

切片

切片是指对操作的对象截取其中一部分的操作。字符串、列表、元组都支持切片操作。

切片的语法:[起始:结束:步长]

注意:选取的区间属于左闭右开型,即从"起始"位开始,到"结束"位的前一位结束(不包含结束位本身)。

我们以字符串为例讲解。

如果取出一部分,则可以在中括号[]中,使用:

    name = 'abcdef'

     print(name[0:3]) # 取 下标0~2 的字符

  

可迭代对象:能被for 循环的就是可迭代对象

分类

  可变:列表、字典

  不可变:字符串、int 、元祖、Bool

  注意:如何查看当前类型是否可变——通过id()方法查看,如果第一次和第二次值不一样说明当前类型是不可变类型

Python学习笔记【第四篇】:基本数据类型

  直接访问:数字   

  访问顺序:可以通过索引和下标访问

      字符串、列表、元祖(有序)

  映射:字典(无序的)

  容器:列表、元祖、字典