python基础知识[仅用于记录某些我不是常用的或者容易忘记的内容,不是系统的,更新遇到的新知识]

 

一、数据类型

数据类型:数字,字符串,列表,字典,元组,集合,布尔类型,None

  • 整数(int)        数学中的整数
  • 浮点数(float) 数学中的小数
  • 布尔值(bool) True和False
  • 字符串(str)    不可变的对象,可通过索引取值,所有input函数接收的数据都是字符串,如果接                              收了整数,可以通过int()函数强转为整数类型,如果是小数,则需要float()强转
  • 列表(list)       有序的数据集合,他是支持增删改查的(CRUD)
  • 元组(tuple)       1.1 一组不可变的序列,用()来创建
                                 1.2 支持索引,切片
                                 1.3 列表会有预留空间,针对一些数据个数是固定的情况,建议使用元组,占用                                    的内存空间可能更小                                                                                                               1.4 元组是可hash化的                                                                                                                       hash值他要求在整个变量的生命周期过程中不能改变                                                                元组不可变---hash值就不会变                                                                                                    列表可变--hash值就变了                                                                                                         1.5 元组一般用来做记录数据和日志记录
  • 集合(set)          a.就是字典的key
                                 b.无序的
                                 c.不重复
                                 d.{}
  • 字典(dict)        key(键)---value(值),用{}包裹
  • 空值(NoneType)None

1.整数的操作

指数: 底数 ** 次数

2.浮点数

精度丢失        0.1 + 0.3 = 0.400000004

3.布尔值

True False

常用做;逻辑运算

4.字符串的操作

切片,索引

str = '0123456789'

str[0] = 0        str[0:2] = 01

去空格

str.strip()

替换

str.replace(原来的字符, 新的字符, 次数)

str = '0123456789'

str.replace('0', '1')        str = '1123456789'

分隔

str.split('分割的字符')

str.split('3')        ['012', '456789]

5.列表

列表的创建

1.list = []

2.使用list()函数转化

 列表的深浅拷贝lst = [a, b, [c, d]]

浅拷贝时子列表说同一个列表,未开辟新的内存

深拷贝不管值是否一样,都开辟了新的内存

列表的排序        list.sort(reverse=True)        降序[False升序]

列表的打乱        list.shuffle(list)

列表的翻转        list.reverse(list)

列表的添加        list.append(内容)        添加到最后一个

列表的删除        list.pop()        默认是第0位,如果括号内有数字,则寻找下标删除

                          list.remove(内容)        如果有内容就会删除,否则报错

                          list.clear()        清除列表的全部内容

6.元组

暂时留着,后续整理

7.字典的操作

   1.特点
     a.它是以键值对的方式保存数据
     b.它保存每一对数据是无序的
     c.我们可以将它的键通过计算或者一个地址值(hash)
     d.key是不重复的,value是可以重复的
     e.键值对修改数据的方式效率较高
   2.创建

     dic = {}

     dic['键'] = '值'
   3.字典推导式
     {键表达式:值表达式 for 变量 in 序列}
     {键表达式:值表达式 for 变量 in 序列 if 条件}

获取所有的键/值        dict.keys()/values()

修改/新增        dict[key] = value

删除                dict.pop(指定的key)/dict.clear() 全部删除

8.集合

'''
    集合的使用
'''
name_1 = {'圆子', '黄老师', '龙仔'}
print(type(name_1))
print(name_1)

name_2 = set('abcdefg')
# 添加元素
name_2.add('张三')
print(name_2)

# 固定集合-->相当于变成元组类型,可hash化
name_3 = frozenset('abcde')
# name_3.add(2)
print(name_3)
# 固定集合的意义: 集合内的元素他是根据hash值来计算位置的
# 当出现这种集合里面嵌套集合元素的时候,建议内部集合使用固定集合,因为使用固定集合,元素不会发生变化,
# 那么内部的集合就是可以hash化的
name_4 = {name_3, 'a'}

# 2.添加元素
# 2.1 add
# 2.2 update: 单个元素直接添加,多个会拆分再添加进去
name_1.update('3')
print(name_1)
name_1.update('123') # 去类比列表里面 extend
print(name_1)

# 3.取值:直接for循环,因为他是无序的,没有索引
if '张三' in name_1:
    print('张三存在name_1')
for i in name_1:
    print(i)

# 4.删除
# name_1.remove(element),存在则删除,不存在,报异常
name_1.remove('龙仔')
print(f'使用remove()删除以后:{name_1}')
# 随机删除(已经存在集合里面的'第一个')
name_1.pop()
print(f'使用pop()删除以后:{name_1}')
# 清空
name_1.clear()
print(f'使用clear()删除以后:{name_1}')

# 5.数学
a = set('abcd')
b = set('abe')
# 差集 :a里面有的b里面没有
print(a-b)
print(a.difference(b))
# 并集:集合a和b不重复的所有元素
print(a|b)
print(a.union(b))
# 交集:集合a和b都有的元素
print(a&b)
print(a.intersection(b))
# 补集:不同时包含a和b的
print(a^b)
print(a.symmetric_difference(b))

二、运算符

参考之前写的[python的字符串解编码及运算符]

http://t.csdn.cn/rjClt

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值