美文网首页
【第6天】python全栈从入门到放弃

【第6天】python全栈从入门到放弃

作者: 36140820cbfd | 来源:发表于2019-08-01 21:05 被阅读0次

1.编码

加载到内存里用的是unicode. 硬盘和网络传输用的是utf-8或者GBK
encode() 编码. 获取到的是编码之后的结果,机器能看懂的底层bytes 。decode() 解码. 把bytes编程我们熟悉的字符串,人能看懂的高级语言

2.列表知识

2.1列表常用的方法

操作:

sort(reverse=True) 排序

reverse() 翻转

len() 长度

count() 数数

2.2元祖

tuple, 只读列表, 由()组成. 不可变的

索引和切片以及for循环

解构, 解包

range(10)     0-9

range(5, 10)    5-9  #默认步长为1,顾头不顾尾

 range(5,10,3)       5,8    #步长为3,顾头不顾尾

2.3 字典

由{}表示. 存储key:value 键值对. 根据key来计算hash值.找到对应的内存地址。key必须是可hash的. 不可变的. int, str, 元组, bool

student={'name':'wangsiyu','age':18}

student['phone']='17605811524'    #增加一个key,value

student.pop('age')   #利用pop()方法删除一个内容

del student['name']    #利用del删除指定

student.popitem()    #删除最后一个

student.clear()   #清空字典

student['name']='nezha'   #修改字典

print(student['name'] )   #查询字典

print(student.get('phone'))  #查询字典

print(student.setdefault('hoppy','run'))      #setdefault()  先执行新增那个流程. 然后.获取到key对应的值

print(student.keys())    #keys() 获取所有的key.返回列表

print(student.values())   #values() 获取所有的values返回列表

print(student.items())    #([('name', 'wangsiyu'), ('age', 18), ('phone', '17605811524')])

2.4 is 和 == 区别

== 判断两边的值

is 判断内存地址

2.5 关于字典键值的遍历

dic={'wangsiyu':1418230212,'马云':123456789}

for k,v in dic.items():

        print(k,v)

for k in dic.keys():

        print(k)
for v in dic.values():

        print(v)

2.6有如下一个列表 li= [11,22,33,44,55,66,77,88,99,90],

将所有大于66 的值保存至字典的第一个key中,将小于66 的值保存至第二个key的值中。即: {'k1': 大于66的所有值列表,'k2': 小于66的所有值列表}

第一种方法

li = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90]

dict={'k1':[],'k2':[]}
for i in li:
    if i >66:
        dict['k1'].append(i)
    else:
        dict['k2'].append(i)
print(dict)


第二种方法,用setdefault(key,value)

li = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90]

dict={}
for i in li:
    if i >66:
        dict.setdefault('k1',[]).append(i)

    else:
        dict.setdefault('k2', []).append(i)

print(dict)

2.7 GBK编码和UTF-8编码相互转化

a='神奇'
#对a进行编码
b=a.encode('gbk')  #b'\xc9\xf1\xc6\xe6'  一个汉字两个字节
c=a.encode('utf-8')  # b'\xe7\xa5\x9e\xe5\xa5\x87'   一个汉字三个字节
#解码
print(b.decode('gbk'))  #神奇
print(c.decode('utf-8'))  #神奇
别跑,点个赞再走

相关文章

网友评论

      本文标题:【第6天】python全栈从入门到放弃

      本文链接:https://www.haomeiwen.com/subject/kmzcdctx.html