2019年3月8日-10日公众号送书活动:中小学生Python课应该学什么

================

前导课程:

Python+django网页设计入门(19):创建新模型扩展自带用户表的字段

Python+django网页设计入门(18):自定义模板过滤器

Python+django网页设计入门(17):模板语法及应用

Python+django网页设计入门(16):优化设计复用分页代码

Python+django网页设计入门(15):公用模板设计与使用

Python+django网页设计入门(14):使用中间件对抗爬虫

Python+django网页设计入门(13):表单、修改密码

Python+django网页设计入门(12):使用Bootstrap和jQuery

Python+django网页设计入门(11):在线考试与自动评分

Python+django网页设计入门(10):分页显示

Python+django网页设计入门(9):自定义反爬虫功能

Python+django网页设计入门(8):网站项目文件夹布局

Python+django网页设计入门(7):常用ORM操作

Python+django网页设计入门(6):文件上传与数据导入

Python+django网页设计入门(5):自定义用户注册与登录功能

Python+django网页设计入门(4):用户登录与登录验证

Python+django网页设计入门(3):使用SQLite数据库

Python+django建站入门篇(2):素数判断

Python+django建站入门篇:Hello world

Python 3.6+Django开发入门小案例(自动变化的问候)完整步骤

===================

技术要点:

1)安装与使用channels及其依赖的软件和扩展库;

2)使用channels实现WebSocket;

3)使用WebSocket实现在线聊天室;

4)检测用户是否登录;

5)异步编程,相关基础知识可以参考《Python程序设计开发宝典》;

5)设置黑名单。

=====================

1、进入cmd模式,执行命令pip install channels,安装channels以及相应的依赖库,在这个过程中,twisted库很容易出问题,所以,先到https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted下载轮子文件放到Python安装目录的scripts文件夹中,执行pip命令离线安装twisted库,然后再安装channels。

2、下载并安装Redis,地址:https://github.com/MicrosoftArchive/redis/releases/download/win-3.0.504/Redis-x64-3.0.504.msi,在安装过程中注意把Redis安装路径添加到环境变量PATH中,并保持默认端口6379不变。

3、安装扩展库channels_redis及其依赖库。

4、新建应用apps\ws\chatroom及其相应的文件,文件夹结构如下

5、修改网站项目的settings.py,增加channels和chatroom应用。

6、修改网站项目的settings.py,配置ASGI_APPLICATION和CHANNEL_LAYERS。

7、执行manage.py命令,更新数据库

8、在网站项目下创建文件routing.py,内容如图所示

9、创建模板文件apps\ws\chatroom\templates\chatroom\index.html,内容如图所示

10、创建模板文件apps\ws\chatroom\templates\chatroom\room.html,内容如下

11、修改文件apps\ws\chatroom\models.py,定义聊天模型,内容如下

12、修改文件apps\ws\chatroom\admin.py,内容如下,使得后台管理员登录之后可以看到聊天室的聊天记录。

13、修改apps\ws\chatroom\urls.py文件内容如下

14、修改apps\ws\chatroom\views.py文件,内容如下

15、修改apps\ws\chatroom\routing.py文件,内容如下

16、修改apps\ws\chatroom\consumers.py文件,内容如下

17、在PyCharm中运行网站,界面如下,注意红线处和之前课程中运行界面的不同。

19、进入聊天室主界面http://127.0.0.1:8000/chatroom/

20、未登录用户的聊天界面

21、黑名单用户的聊天界面

22、打开两个不同的浏览器,使用不同的用户身份登录,然后聊天,界面如下

温馨提示

关注本公众号“Python小屋”,通过菜单“最新资源”==>“历史文章”可以快速查看分专题的800篇技术文章列表,通过“最新资源”==>“微课专区”可以免费观看300节Python微课,通过“最新资源”==>“培训动态”可以查看近期Python培训安排,通过“最新资源”==>“教学资源”可以查看Python教学资源。

--------董付国老师Python系列图书--------

1)《Python程序设计(第2版)》清华大学出版社

2)《Python可以这样学》清华大学出版社

3)《Python程序设计基础(第2版)》清华大学出版社

4)《中学生可以这样学Python》清华大学出版社,配套微课:《中学生可以这样学Python》84节微课免费观看地址

5)《Python程序设计开发宝典》清华大学出版社

6)《玩转Python轻松过二级》清华大学出版社

7)《Python程序设计基础与应用》机械工业出版社

8)《Python程序设计实验指导书》清华大学出版社(预计2019年3月出版)

9)《Python编程基础与案例集锦(中学版)》电子工业出版社(2019年3月第一版第一次印刷)

《中学生可以这样学Python》84节微课免费观看地址

非计算机专业《Python程序设计基础》教学参考大纲

计算机相关专业“Python程序设计”教学大纲(参考)

《Python程序设计》实验指导书(30个实验)

《Python程序设计基础与应用》课后习题答案

Python课程期末考试编程题自动批卷原理与实现模板

“Python小屋”免费资源汇总(截至2018年11月28日)

系列教学PPT:

1900页Python系列PPT分享一:基础知识(106页)

1900页Python系列PPT分享二:Python序列(列表、元组、字典、集合)(154页)

1900页Python系列PPT分享三:选择与循环结构语法及案例(96页)

1900页Python系列PPT分享四:字符串与正则表达式(109页)

1900页Python系列PPT分享五:函数设计与应用(134页)

1900页Python系列PPT分享六:面向对象程序设计(86页)

1900页Python系列PPT分享七:文件操作(132页)

1900页Python系列PPT分享八:异常处理结构与程序调试、测试(70页)

报告PPT(163页):基于Python语言的课程群建设探讨与实践

报告PPT(123页):Python编程基础精要

2000页Python系列PPT分享九:(GUI编程)(122页)

Python实验项目1例:使用进程池统计指定范围内素数的个数

(PPT)Python程序设计课程教学内容组织与教学方法实践

Python+django网页设计入门(20):使用WebSocket创建多人在线聊天室相关推荐

  1. Python+django网页设计入门(19):创建新模型扩展自带用户表的字段

    公众号送书活动火热进行中:新学期福利,送18本Python图书 ================== 前导课程: Python+django网页设计入门(18):自定义模板过滤器 Python+dja ...

  2. Python+django网页设计入门(18):自定义模板过滤器

    前导课程: Python+django网页设计入门(17):模板语法及应用 Python+django网页设计入门(16):优化设计复用分页代码 Python+django网页设计入门(15):公用模 ...

  3. Python+django网页设计入门(17):模板语法及应用

    前导课程: Python+django网页设计入门(16):优化设计复用分页代码 Python+django网页设计入门(15):公用模板设计与使用 Python+django网页设计入门(14):使 ...

  4. Python+django网页设计入门(16):优化设计复用分页代码

    前导课程: Python+django网页设计入门(15):公用模板设计与使用 Python+django网页设计入门(14):使用中间件对抗爬虫 Python+django网页设计入门(13):表单 ...

  5. Python+django网页设计入门(15):公用模板设计与使用

    前导课程: Python+django网页设计入门(14):使用中间件对抗爬虫 Python+django网页设计入门(13):表单.修改密码 Python+django网页设计入门(12):使用Bo ...

  6. Python+django网页设计入门(14):使用中间件对抗爬虫

    前导课程: Python+django网页设计入门(13):表单.修改密码 Python+django网页设计入门(12):使用Bootstrap和jQuery Python+django网页设计入门 ...

  7. Python+django网页设计入门(13):表单、修改密码

    前导课程: Python+django网页设计入门(12):使用Bootstrap和jQuery Python+django网页设计入门(11):在线考试与自动评分 Python+django网页设计 ...

  8. Python+django网页设计入门(12):使用Bootstrap和jQuery

    文中有源码下载方式,请仔细寻找. 前导课程: Python+django网页设计入门(11):在线考试与自动评分 Python+django网页设计入门(10):分页显示 Python+django网 ...

  9. Python+django网页设计入门(11):在线考试与自动评分

    前导课程: Python+django网页设计入门(10):分页显示 Python+django网页设计入门(9):自定义反爬虫功能 Python+django网页设计入门(8):网站项目文件夹布局 ...

最新文章

  1. CFCC百套计划4 Codeforces Round #276 (Div. 1) E. Sign on Fence
  2. Java数字分类给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3
  3. 入门教程:.NET开源OpenID Connect 和OAuth解决方案IdentityServer v3 介绍 (一)
  4. [leetcode双周赛]5311. 将数字变成 0 的操作次数
  5. 高等数学_第一章第3节_函数的极限
  6. 初中科技节计算机,初中科技节活动方案.doc
  7. [iOS]delegate和protocol
  8. EasyCVR调用Ehome协议接入的硬盘录像机设备录像无法播放,如何处理?
  9. pgadmin4 如何改成中文版
  10. Mac上使用Chrome浏览器截取长图
  11. 百度360争推1TB永久网盘
  12. Word——从任意页开始设置页码的方法
  13. Java基础篇---练习:类的设计
  14. 【图片新闻】俄罗斯的新型高超音速导弹每秒飞行近两英里,“锆石Zircon”很可能是不可阻挡的尖端防空武器
  15. 程序员过中秋 | 如何用代码绘制月亮?
  16. 会讲故事的前物理学家万维钢解读、推荐过的书24本,好书一半
  17. 怎样淡化疤痕留下的色素沉着
  18. APK安装包如何安装到安卓手机上
  19. 《RCLane:Relay Chain Prediction for Lane Detection》论文笔记
  20. va_start 用法

热门文章

  1. linux telnet mysql_Linux下安装telnet(傻瓜教程)
  2. mysql数据库的函数_详解数据库_MySQL: mysql函数
  3. php代理请求失败,http请求失败有哪些原因
  4. linux ip addr peer,CentOS 7 设置网络IP地址
  5. php microtime true输出说明,php使用microtime(true)查看代码执行时间
  6. linux svn启动失败,linux svn authorization failed错误
  7. laravel created_at 时间戳_Laravel 单行为控制器设计的魅力
  8. 天津市全国计算机等级报名时间,天津市2018年全国计算机等级考试报名时间及地点...
  9. SpringBoot 2 集成微信扫码支付
  10. 基于JAVA+SpringMVC+Mybatis+MYSQL的手表销售系统