1.前端:直接和用户打交道的界面
2.后端:不能直接和用户打交道的写在内部的真正执行功能的代码
3.前端的学习历程:
1.先写一个服务端
import socket
server = socket.socket()
server.bind(('127.0.0.1',8080))
server.listen(5)
sock, addr = server.accept()
sock.send(b'HTTP/1.1 200 OK \r\n\r\n hello world')
data = sock.recv(1024)
print(data)
2.让浏览器充当客户端,在浏览器输入ip和端口的组合,访问我们写的服务端:127.0.0.1:8080
3.浏览器客户端接收到的数据必须符合浏览器端制定的协议:http,ftp,https等
所有浏览器展示的页面必备的
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
head>
<body>
body>
html>
空格
> 大于号
< 小于号
& &
¥ ¥
® 注册符号
© 版权符号
1无序列表
<ul>
<li>选择1li>
<li>选择2li>
<li>选择3li>
ul>
2.有序列表
<ol type="I" start='3'>
<li>选择1li>
<li>选择2li>
<li>选择3li>
ol>
3.标题列表
<dl>
<dt>标题1dt>
<dd>内容1dd>
<dd>内容2dd>
dl>
<table>
<thead>
<th>IDth>
<th>usernameth>
<th>passwordth>
thead>
<tbody>
<tr>
<td>1td>
<td>jasontd>
<td>111td>
tr>
<tr>
<td>2td>
<td>xietd>
<td>222td>
tr>
tbody>
table>
<body>
<form action="" method="">
<P>username:<input type="text">P>
<P>password:<input type="password">P>
<P>datetime:<input type="date">P>
<p>gender:
<input type="radio" name="gender" checked>male
<input type="radio" name="gender">female
<input type="radio" name="gender">others
p>
<P>hobby:
<input type="checkbox" name="hobby" checked>唱
<input type="checkbox" name="hobby">跳
<input type="checkbox" name="hobby">rap
<input type="checkbox" name="hobby">篮球
P>
<P>email:<input type="email">P>
<P>file:<input type="file">P>
<P>files:<input type="file" multiple>P>
<p>province:
<select name="" id="" multiple>
<option value="" selected>北京option>
<option value="">上海option>
<option value="">南京option>
select>
p>
<p>
<textarea name="" id="" cols="30" rows="10">textarea>
p>
<P><input type="submit" value="登录">P>
<P><input type="reset" value="重置">P>
<P><input type="button" value="普通按钮">P>
form>
body>