python笔记

python官方文档

6.6的代码:

from maix import camera,mjpg,display
import socket

#host_name='192.168.4.1'
shuzu=bytearray(57600)#bytes是不能被修改的

#s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#地址簇 : AF_INET (IPv4)类型: SOCK_STREAM (使用 TCP 传输控制协议)
#s.connect((host_name,3333))

img=camera.capture()
img_2=img.tobytes()
print(shuzu[2])
for i in range(172799):
   if (i%3)==0:
       shuzu[int(i/3)]=img_2[i]

#display.show(img)

#message=input("输入东西:")
#s.send(message.encode())

#uppermassage=s.recv(172800).decode()
print("结果是:")
print(shuzu.hex())
#print(img.tobytes().hex()[2])

#s.close()

#while True:

 

bytes打印成hex

在一些时候,我们会读取一些bytes类型的数据,我们可能想输出的他的16进制,当用print(bytes)的时候,就会直接打印出对应的字符,这不符合要求。看下官方怎么说:

即,对于bytes类型,官方已经给出了相应的操作函数,不需要再写什么循环了。

可以使用print(value.hex())来输出value的16进制数

bytes与bytearray

bytes

>>> type(b'xxxxx')
<class 'bytes'>

>>> type('xxxxx')
<class 'str'>

bytes是byte的序列,而str是unicode的序列。

 

1、str 转换成 bytes 用 encode() 方法:(注意:这有个坑,str1.encode不加括号和加括号是不一样的,自己试试,初学貌似2.0不影响,3.0变了,不加括号开发环境语法不报错)

str = '人生苦短,我用Python!'
bytes = str.encode()
print(bytes)

输出:

b'\xe4\xba\xba\xe7\x94\x9f\xe8\x8b\xa6\xe7\x9f\xad\xef\xbc\x8c\xe6\x88\x91\xe7\x94\xa8Python!'

2、好了,反转换 decode() :

bytes = b'\xe4\xba\xba\xe7\x94\x9f\xe8\x8b\xa6\xe7\x9f\xad\xef\xbc\x8c\xe6\x88\x91\xe7\x94\xa8Python!'
str = bytes.decode()
print(str)

输出:

人生苦短,我用Python!

bytearray

1、bytearray和bytes不一样的地方在于,bytearray是可变的。

str = '人生苦短,我用Python!'
bytes = bytearray(str.encode())
bytes = bytearray(b'\xe4\xba\xba\xe7\x94\x9f\xe8\x8b\xa6\xe7\x9f\xad\xef\xbc\x8c\xe6\x88\x91\xe7\x94\xa8Python!')
str = bytes.decode()
print(str)

输出:

'人生苦短,我用Python!'

2、改变bytearray

bytes[:6] = bytearray('生命'.encode())
bytes = bytearray(b'\xe7\x94\x9f\xe5\x91\xbd\xe8\x8b\xa6\xe7\x9f\xad\xef\xbc\x8c\xe6\x88\x91\xe7\x94\xa8Python!')
str = bytes.decode()
print(str)

输出:

生命苦短,我用Python!

 pip

在使用python的时候,经常使用到pip这个工具,可以很方便的线上安装依赖库,当然pip还有很多参数都可以帮我们去查询一些库信息,在安装python的时候,下载带有pip的安装包就可以直接安装pip啦,当然没有带pip的,也可以通过下载安装包,手动安装。手动安装还是要会的,毕竟有时候下载超时、或者安装失败都可以用。

命令:python 库的setup.py install,在v831中python3的pip为pip3

查看pip

1.直接在cmd窗口中输入pip命令,会显示pip所有的参数使用方法;

输入pip提示Did not provide a command,则有两种可能,第一是没有配置环境变量,第二就是其他应用程序也存在pip的环境变量

2.where pip(此方法在v831不适用)

这个命令不是pip的命令啊,用这个命令主要是如果上一步,环境变量配置没问题,就是第二种啦,这时候就可以用where pip来查询啦

pip版本

用pip -V可以查看版本,是大写的V:

pip list

查看已经安装的第三方库

 pip list --outdated:可以查看有新版本的第三方库,可显示现在安装的版本,以及最新的版本

pip安装第三方库

命令:pip install  库名

pip安装会拉取最新版本安装,想安装任意版本则可加上版本号

命令:pip install 库名=版本号

查看安装

查看安装库的详细信息,命令:pip show 库名

卸载第三方库

命令:pip uninstall 库名

卸载pip

卸载pip的命令:python -m pip uninstall pip;也可以直接把pip文件夹删了;建议使用命令后把遗留的文件删除即可。 pip install upgrade pip

OPEN文件打开存储

with open("test2.txt","wb") as f2:
    f2.write(img.tobytes())
    f2.close()

 

"with"大概是固定语句

posted @ 2023-06-06 20:56  悠闲的小莫  阅读(28)  评论(0编辑  收藏  举报