python基础

目录

    • 运行网站
    • 异常处理结构
    • socket网络编程
      • 常用方法
    • 可执行文件的转换

运行网站

https://jsrun.net/py/new

异常处理结构

1.try ... except ... 结构
2.try ... except ... else... 结构
3.try ... except ... finally ...结构

try…except

match = input('数学成绩')
try:
	match = int(match)
	if(0<=match<=100):
		print(f"输入的成绩为:{match}");
	else:
		print("输入不在本科成绩范围内。")
except Exception as e:
	print("输入成绩有误。")
			

可用try…except…else代替上面的代码

match = input('数学成绩')
try:
	match = int(match)
except Exception as e:
	print("输入成绩有误。")
else:
    if(0<match<=100):
        print(f"输入的数学成绩为:{match}")
    else:
        print(f"输入的数字不在成绩范围内。")			

try…except…finally
不论try字句中的语句是否正常执行,finally中的字句中的代码块总会得到执行。

a=int(input('a:'))
b=int(input('b:'))
try:
    div=a/b
    print(div)
except Exception as e:
    pass
finally:
    print("运行结束。")

socket网络编程

说明:socket是计算机之间进行网络通信的一套程序接口,相当于在发送端和接收端之间建立了一个通信管道。
下面将介绍tcp远程控制协议。
使用tcp进行通信,首先需要在客户端和服务器端建立连接,并且要在通信结束后关闭连接以释放资源。

常用方法

connect(address):连接远程计算机
send(bytes,[,flags]):发送数据。
recv(bufsize[,flags]):接收数据。
bind(address):绑定地址。
listen(backlog):开始监听。
accept():响应客户端的一个请求,接受一个连接。

设计一个对话系统,分为服务端和客户端。

# 服务端
import socket

language = {'what is your name:':'I am Tom','how old are you?':'25','bye':'bye!'}
HOST = "127.0.0.1"
PORT = 6666
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind((HOST,PORT))
s.listen(1)
print("Listing at port 6666")
conn,addr = s.accept()
print("connect by:",addr)
while True:
    data = conn.recv(1024)
    data = data.decode()
    if not data:
        break
    print('received message:',data)
    con.sendall(language.get(data,'Nothing').encode())
conn.close()
s.close()
# 客户端
import socket

language = {'what is your name:':'I am Tom','how old are you?':'25','bye':'bye!'}
HOST = "127.0.0.1"
PORT = 6666
s = socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind((HOST,PORT))
s.listen(1)
print("Listing at port 6666")
conn,addr = s.accept()
print("connect by:",addr)
while True:
    data = conn.recv(1024)
    data = data.decode()
    if not data:
        break
    print('received message:',data)
    con.sendall(language.get(data,'Nothing').encode())
conn.close()
s.close()

说明:将以上代码分别保存为:server.py和client.py文件,在cmd下运行服务端开始监听,再新建一个cmd窗口运行客户端。服务端会根据建立的字典进行回复。

可执行文件的转换

PyInstaller是常见的执行文件打包工具。但在Windows下用PyInstaller生成的文件只能在Windows下运行,Linux下使用pyinstaller生成的文件只能在Linux下执行。
将要打包的Python文件和需要绑定的图标.ico,放在一个文件夹下,cmd打开后执行:

pyinstaller -F -i snial.ico ms08067.py

你可能感兴趣的:(python-安全攻防,python,网络,开发语言)