标签:func lis decode 验证码 维护 ip地址 === log 可扩展性
"""
1、什么是函数
2、为何要有函数
没有用函数
1、程序冗长,组织结构不清晰,可读性差=》可维护性
2、可扩展性差
3、如何函数
"""
# def login():
# user=input(‘username>>>: ‘).strip()
# pwd=input(‘password>>>: ‘).strip()
# code=input(‘验证码>>>: ‘).strip()
# if user == "egon" and pwd == "123":
# print(‘login successful‘)
# else:
# print(‘login failed‘)
#
# login()
# def copy():
# print("拷贝功能1")
# print("拷贝功能2")
# print("拷贝功能3")
#
# copy()
# copy()
# copy()
# def max2(x,y):
# # x=11
# # y=12
# if x > y:
# print(x)
# else:
# print(y)
#
#
# max2(11,12)
# max2(33,43)
# x=11111111111111
# x
#
# def func(): # func=函数体代码
# x=input(‘输入用户名>>:‘)
# y=input(‘输入密码>>:‘)
# return 123
# z = input(‘输入验证码>>:‘)
# return "结果2"
#
# res=func()
# print(res)
# 一个人
def max2(x,y):
if x > y:
return x
else:
return y
# 另外一个
# res=max2(10,12)
#
# print(res * 12)
def func(x):
res=x + "_sb" # res="lxx_sb"
return res
res=func("lxx")
print(res.upper())
====================网络编程基础知识=================
网络=物理连接介质+互联网通信协议
OSI七层协议
应
表
会
传
网
数
物
五层
应
传
网
数 ethernet
物
# 客户端
192.168.12.95
255.255.255.0
192.168.12.0
# 服务端
192.168.12.10
255.255.255.0
192.168.12.0
ARP协议工作方式
一、先计算两个子网地址是否一样:
例如:
客户端:192.168.12.95/24
服务端:192.168.12.10/24
(1)如果一样
===========ARP协议工作:直接拿到局域网内服务端的mac地址=========
客户端发送ARP广播包
自己的mac FFFFFFFFFFFF 192.168.12.95/24 192.168.12.10/24
只有192.168.12.10/24服务端会作出响应,并返回自己的mac地址
客户端拿到服务端的mac地址
===========发包=========
客户端的mac地址 服务端的mac地址 自己的ip地址192.168.12.95/24 目标ip地址192.168.12.10/24 数据
例如:
客户端:192.168.12.95/24
服务端:202.106.13.11/24
(2)如果不一样
===========ARP协议工作:直接拿到局域网内网关的mac地址=========
客户端发送ARP广播包
自己的mac FFFFFFFFFFFF 192.168.12.95/24 192.168.12.1/24==>网关的地址
只有192.168.12.10/24服务端会作出响应,并返回自己的mac地址
客户端拿到网关的mac地址
===========发包=========
客户端的mac地址 网关的mac地址 自己的ip地址192.168.12.95/24 目标ip地址202.106.13.11/24 数据
ip+port=》全世界范围内独一无二的一个应用程序
=================远程连接客户端服务端的命令===================
=================客户端:
import socket
# 1、买手机
phone = socket.socket()
# 2、拨电话
phone.connect((‘192.168.12.178‘, 8080))
# 3、发/收消息
phone.send("hello".encode("utf-8"))#send:发送
data=phone.recv(1024) #recv :接收
print(data.decode(‘utf-8‘)) decode:解码
# 4、
phone.close()#close:关机
==========服务端
#coding:utf-8
import socket
# 1、买手机
phone = socket.socket()
# 2、绑定手机卡
phone.bind((‘10.0.0.200‘, 8080)) # 0-65535
# 3、开机
phone.listen(5)
# 4、等待/接收电话连接
conn,client_addr=phone.accept()#client :客户端 accept:j接收
print(client_addr)
# 5、收/发消息
data = conn.recv(1024)
# conn.send(data.upper())
conn.send(u"收到啦".encode(‘utf-8‘))
# 6、挂电话
conn.close()
# 7、关机
phone.close()
标签:func lis decode 验证码 维护 ip地址 === log 可扩展性
原文地址:https://www.cnblogs.com/pmstaw/p/13723239.html