TOP

0005-20180422-自动化第六章-python基础学习笔记(一)
2019-08-23 00:31:18 】 浏览:63
Tags:0005-20180422- 自动化 -python 基础 学习 笔记

day6

内容回顾:
1. 变量
2. 条件
3. while循环

4. 数据类型
- int
- bit_length
- bool
- True/False
- str
- upper
- lower
- strip
- split
- replace
- join
- capitalize
- startswith
- endswith
- isdecimal
- list
- append
- insert
- reverse
- tuple
-
- dict
- get
- items
- keys
- values
5. for

6. range

7. 编码
ascii
unicode
utf-8
gbk

8. else

if xxx:
pass
else:
pass


while True:
pass
else:
pass


for item in xxx:
pass

else:
# 当可迭代对象中的元素,被循环完毕后执行一次
pass


例题:

while True:
for k in dic:
if 'k' in k:
del dic[k] #删除后如果没有下一行的break跳出此轮的for循环则字典会报错----删除了循环中的字典键值
break
else: #for循环结束的标志----使用else
break
print(dic)


while True:
for k in dic:
if 'k' in k:
del dic[k] #删除后如果没有下一行的break跳出此轮的for循环则字典会报错----删除了循环中的字典键值
break
break
print(dic)

 

今日内容:
1. 数据类型
- bytes -----gbk,utf-8,..编码
表现形式:name = b"alex"
name = b'\xe6\xb5\xb7\xe5\xa8\x87' #海娇 #如果有中文表现形式为16进制字符
内部原理:utf-8或gbk...
- upper
***bytes 里的功能同str一样,只是表现形式不同而已***
- lower
- strip
- split
- replace
- join
- capitalize
- startswith
- endswith
- isdecimal

- int
- bit_length
- to_bytes ,将数字转换为字节类型,6表示用多少个字节表示,little/big用于指定生成字节的顺序
val = 66
#计算机硬件CPU处理的大端,小端
result=val.to_bytes(6,'big')#6控制的是生成多少个字节的字符,big表示大端,CPU处理时,指示是从后往前读(big)还是从前往后读(little)
print(result)
#b'\x00\x00\x00\x00\x00B'


val = 66
#计算机硬件CPU处理的大端,小端
result=val.to_bytes(6,'little')#6控制的是生成多少个字节的字符,big表示大端,CPU处理时,指示是从后往前读(big)还是从前往后读(little)
print(result)
#b'B\x00\x00\x00\x00\x00'#此处显示3位,大写的B是assic码表示66的编码,与二进制没有关系



- from_bytes #将字节再转换为数字

val = 2
result=val.to_bytes(6,'little')
print(result)

#将字节再转换为数字:
data = int.from_bytes(result,'little')
print(data)
#b'\x02\x00\x00\x00\x00\x00'
#2



- bool
- True/False
- str ----unicode编码 #py3中默认 name = "alex" --->网络传输或存硬盘则转换为字节:name = b"alex"
表现形式:name = "alex"
name = '海娇' # 海---占4个字节的01,娇---占4个字节的01
内部原理:unicode

示例:
# a = "alex" 通过gbk编码在硬盘或网络传输中的01查看
a = "alex".encode('gbk')
for i in a:
print(bin(i))

# D:/Install-File/python-work/auto-chapter6/3-data-class-supplement.py
# 0b1100001
# 0b1101100
# 0b1100101
# 0b1111000


name = "海娇".encode('gbk')
for i in name:
print(bin(i))

D:/Install-File/python-work/auto-chapter6/3-data-class-supplement.py
0b10111010
0b10100011
0b10111101
0b10111111


name_str = "海娇" #默认unicode编码格式8个字节
name_tytes = name_str.encode('utf-8') #转换为utf-8编码后6个字节

print(name_tytes)
# D:/Install-File/python-work/auto-chapter6/3-data-class-supplement.py
# b'\xe6\xb5\xb7\xe5\xa8\x87'


name_str = "海娇" #默认unicode编码格式8个字节
name_tytes = name_str.encode('gbk') #转换为gbk编码后4个字节

print(name_tytes)

# D:/Install-File/python-work/auto-chapter6/3-data-class-supplement.py
# b'\xba\xa3\xbd\xbf'


#二进制打印字符串以utf-8编码的字符------海娇----在内存中的二进制编码
name_str = "海娇" #默认unicode编码格式8个字节
name_tytes = name_str.encode('utf-8') #转换为gbk编码后4个字节
for i in name_tytes:
print(bin(i))
# b'\xe6\xb5\xb7\xe5\xa8\x87'

# D:/Install-File/python-work/auto-chapter6/3-data-class-supplement.py
# 0b11100110
# 0b10110101
# 0b10110111
# 0b11100101
# 0b10101000
# 0b10000111


name_str = "查显忠" #默认unicode编码格式12个字节
name_tytes = name_str.encode('utf-8') #转换为gbk编码后9个字节
print(name_tytes)
for i in name_tytes:
print(bin(i))

D:\Install-File\python-work\venv\Scripts\python.exe D:/Install-File/python-work/auto-chapter6/3-data-class-supplement.py
b'\xe6\x9f\xa5\xe6\x98\xbe\xe5\xbf\xa0'
0b11100110
0b10011111
0b101
0005-20180422-自动化第六章-python基础学习笔记(一) https://www.cppentry.com/bencandy.php?fid=86&id=229748

首页 上一页 1 2 3 4 下一页 尾页 1/4/4
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇delphi连接mysql (通过libmysql... 下一篇Delphi 实现不规则窗体