python的小总结

1.list 列表 [] 放入各种数据类型的数据

2.tuple 元组 () 也可以放多个类型 但是是只读. 元组又叫只读列表.

3.dict 字典 {"name',"哈哈哈"}    键值对的形式. 存储大量的数据. 存的是关系型的数据. 字典内可以存列表.

4.set 集合 {} 也是以大括号的元素 但是 里面是一个一个元素.

5.切片:顾头不顾腚: s = "多多多多多多赚赚赚"   s6 = s[0:6]    s6 = s[ : 6] 起始为0 则不写0 也行.

6.步长 s6 = s[:5:2] 取0-5 然后 隔两个去一个字符.

7.s = "liuBingYin"      s1 = s.capitalize()       capitalize 意思是转换字符串中的大小写 转变为 首字母大写.

8.s = "liubingyin" s1 = s.center(20,"*") 第一个参数 是两边的间距 第二个是 两边空出来的部分填充什么内容.

9.s1 = s.upper() upper 是全大写.    s1 = s.lower() lower 全小写.        这两个用途主要是验证码部分.

eg:code = "QaE".

upper() your_code = input("输入验证码,不区分大小写:").upper()

if your_code == code:

           print("验证成功")

10.s = "lbylbylbylby"

s1 = s.startwith("l")

s1 = s.startwith("y",3,6)

这个发 在3-6 中间是不是以 y 开头呢. 返回的都是bool值返回.

数据处理 会用到这个startwith.

11.    swap 大小写翻转.          title 非字母隔开的每个单词的首字母大写.

12.s = "qwer" find 找元素角标 s1 = s.find("w") 角标是1     index 通过元素找索引,  可切片,  找不到 -1

13.strip 去处前后的空格,换行符,制表符.

14.split 分割 以空格隔开 分割成了列表 s1 = s.split(",",2)

转换出来的 样子就是 如果括号内是逗号 就是元素内 是以逗号分割的.

后面的参数是分割次数.被分割的就没了.

15.  join 在某些情况下,list ---> str l = ["aaa","bbb","ccc"]

        s1 = "".join(l) print(s1)  : aaabbbccc

        形式是 字符串形式.

16.s = "小刚是一个人" s1 = s.replace("小刚","小红") print(s1)     小红是一个人

17.len 看字符串总个数.  个  数是20 索引就是19     数出 某个元素    出现的次数.     c1 = s.count("f") print(c1)

18.format 格式化输出.

1.msg = "我叫{},今年{},爱好{}".format("刘丙寅","26","篮球") {}相当于%s

2.msg = "我叫{0},今年{1},爱好{2},我依然叫{0}".format("刘丙寅","26","篮球") {}相当于%s

3.msg = "我叫{name}今年{age}爱好{hobby}".format(name = "刘丙寅",age = "26",hobby = "篮球") {}相当于%s 不局限于顺序.

19.应该能应用在比如说注册时候密码的验证上面.

判断全部是数字 isdigit()

判断全部是字母 isalpha()

判断是数字或者字母 isalnum()

20.for i  in s:   for循环

 

列表的增删改查:

增:

形式1:  

append 追加

li = [aa, "bb", 11]

li.append("ddd") print(li)      li = [aa, "bb", 11,"dd"]

形式2  

insert 添加 根据索引在对应的位置添加.

li.insert(1,"哪吒")

形式3:

li = [123, "jkjsdkl", 222]

li.extend("的撒旦的")

print(li)     [123, 'jkjsdkl', 222, '的', '撒', '旦', '的']      迭代追加.

 

删:

形式1:     根据索引,删除元素

li = [123, "jkjsdkl", 222]  

li.pop(0)                  

形式2:     按照元素去删除

 li.remove("123")

形式3:     清空这个列表里面的内容.

li.clear()

形式4:      del 整个列表全部删除.

 

改:

形式1:       按照索引去修改.

li[0] ="小六"

形式2:

按照切片去修改. 先将切片的区域内的内容全部删除 然后再 迭代着添加内容.

li[:3] = "qwer"

 

查:

形式1:      按照索引切片去查找 或者 for 循环查

for i in li: print(i)

形式2:

cou = len(li) 查看元素个数.

形式3:

count 同一个元素 出现的次数.

index 通过元素 找索引 li.index("123")

 

形式4:       sort: 从小到大   排序

l2.sort()  

l2.sort(reverse=True) 加了参数 就是 倒序排列.

无大小之分 根据当前顺序进行翻转排列.

l2.reverse()

 

元组:

1.被称为只读列表 只能查 不能进行增删改.

元组可以用index len count 儿子不能改 孙子可以改动.

# 元组可以用index len count

儿子不能改 孙子可以改动.

 

tu1 = ("sds","ererer0",111,[111,"222"])

#[]里面的东西可以改动

tu1[3].append("liubingyin") 

 

range是什么?

#range 范围 是一个自定义的数字范围列表 与for循环结合使用.

# 循环输入 100 for i in range(0,101):

#满足顾头不顾腚的原理. 0 可以取到 101不可以. #print(i)

 

 

#敏感词的替换

str = "小姐姐代收款附件克里斯丁就发,附件快乐圣诞节"

str = str.replace("小姐姐","*") 

 

字典:

基础数据类型之一 {} 以键值对的形式来进行存储数据. 字典的增删改查. key value 的形式 也是映射数据类型.存储的都是关系型数据.

 

容器类的数据类型:list[], dict{}, tuple().

非容器类的数据类型:str,int,bool.

字典的key 必须是不可变的数据类型. 只能从:str tuple()元素 int bool布尔值.中设置类型.

字典的value 可以是任意的数据类型.

字典的查询速度非常快. 键是唯一的.存在一个hash算法. 字典的键都会通过hash表 转换成数字.

 

字典的增删改查:

增:

形式1:

dic = { name : "刘丙寅" , age:26}

dic["sex"] = "男"         有就会覆盖掉原来的数据.没有的话就会添加数据.

 

形式2:

#设置一个只有键没有值得,进行占位.

dic.setdefault("sex")

dic.setdefault("sex",24) #有则不做修改,没有则添加数据.

 

删:

形式1:

dic.pop("age") #按照键去删除整个键值对

dic.pop("age","没有这个键..") #后面增加这个参数 如果字典里面没有这个键也不会报错.

 

形式2:

#清空字典 dic.clear()

#随机删除 dic.popitem()

#删除整个字典 del dic

#删除字典里面的键值对. del dic["name"]

 

改:

dic["sex"] = "男"

#这也叫修改 #update 是针对两个字典的更改.

 

 

查:

形式1:

dic.get("name") #有则取出来 没有则返回none 后面添加参数的话, 就返回该参数.

dic = {"name":"刘丙寅","age":26,"name_list":["反面","正面","左面","右面"]}

形式2:

#for循环查询 dic.keys()

#找出来所有的键 放在一个特殊的类型中. 这个类型 类似于列表 但不是列表的容器.

dic.values() dic.items()

#这三个可以for循环 for keys in dic.keys(): print(keys)

dic.keys() dic.values() dic.items()

返回的都是类似于列表的数据类型. 可遍历 没有索引. 直接用list将这个包裹 便可转换为列表

直接循环遍历一个字典 就是 去的所有的键.

 

is 比较的是内存地址是否相同.

小数据池 只存在于int 和str中 在一定范围内 如果两个数值相同.为了节省内存.公用一个内存地址.

读取一个文件 或者传输一个文件 要先转换成 bytes类型. 才能传输.

 

在文件的存储或传输,编码是除unicode以外的任意编码.

utf-8 和 gbk 不能直接转换 需要用unicode来做承接.

utf-8先转换为unicode 解码(decode) 然后unicde再转换成gbk 编码(encode)

 

元组中如果只有一个元素 并且没有都逗号那么 该数据类型是对应的元素类型

如果有逗号  那么该元素就是 元组类型.

("你好",)    和   ("你好")      type 不同

 

dic = dict.fromkeys("abc" ,666)

print(dic)                     效果:{'a': 666, 'b': 666, 'c': 666}

 

enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中.

 

 

dic = dict.fromkeys("abc" ,666)   

Python 字典 fromkeys() 函数用于创建一个新字典,以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值。

print(dic)

效果:{'a': 666, 'b': 666, 'c': 666}

 

 

集合:

集合: set 可变的数据类型. 是以{}的形式存在的. 字典也是但是字典是键值对的形式. 而集合是一个元素.

空集合:set() 空字典 {}

集合是可变的 但是集合内部的元素 是不能变的 是能是 元组,数字,字符串,boolean值.

集合是无序的.不重复的.

集合作用:

1.去重.    列表扔进去集合中 再拿出来的时候 就是

2.关系测试. set1 = {1,2,3,"abc",(1,2,3),True} print(set1) 

 

集合的增删查:    (因为集合是无序的 没有索引 所以不能修改.)

1.增加:

set1 = {"sds","收到","sdsd","gfg","rtrtrt"}

set1.add("刘丙寅") print(set1)

2.删除: 按照元素删除

set1.remove("sds") print(set1)

随机删除:

set1 = {"sds","收到","sdsd","gfg","rtrtrt"}

set1.pop() print(set1)

清空: set1.clear()

删除整体: del set1

查询: for i in set1: print(set1) print(i)

 

文件操作:

world wps 等 需要知道这个文件的路径

path 例如 d:\ddd.txt encoding

编码方式: utf-8 gbk 等

mode 操作方式: 只读,只写,追加,读写,写读.

绝对路径. f1 = open("d:\xxoo.txt",encoding="utf-8",mode="r") f1.close() f1 产生的一个变量. 又叫文件句柄.

open就是对文件操作用的. open就是python的内置函数. 底层是调用windows的open功能用的.

linux系统也有一个open功能.

windows 这个系统 默认的编码方式为 gbk

linux macos :默认编码格式:utf-8

 

流程: 文件操作:

1.打开文件,产生文件句柄 f1 = open("d:\xxoo.txt",encoding="utf-8",mode="r")

2.对文件句柄产生相应的操作. f1.read()

3.关闭文件. f1.close()

 

相对路径: 当txt文档等 放在python上的时候,就用相对路径.

f1 = open('aaa.txt', encoding='utf-8')

print(f1.read(3))

f1.close()

r模式:read(n) n 是按照字符读取。

rb模式:read(n) n 是按照字节读取。

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值