关于初学python的心得体会

  

一、个人学期总结

本学期在missdu的带领下,进行了python的学习,共在博客园发布了40篇学习随笔,学习过程可分为3个阶段。前期理论教授,理解管路信息系统,基础练习,中期开始网页的制作,后期为网页增加功能。

前期

用Python进行简单算数计算。了解turtle库(海龟库),在此环境中练习条件、循环、函数定义的代码敲打,并画出了五角星、同心圆、太阳花、中国国旗等。随后便学习了字符串的基本操作,学会输入字符串,输出代码计算后的结果。还学习了凯撒密码、GDP格式化输出、九九乘法表等简单操作。利用python进行英文词汇统计,组合数据类型练习,用文件形式实现完成的英文词频统计、中文词频统计。利用datetime处理日期和时间,将字符串转化成imestamp与timedelta,同时了解管理信息系统概念与基础,理解数据存储的方式如字典、列表、元祖、集合,了解到Web是图形化的和易于导航的、与平台无关、是分布式的、是动态的、是交互的。

 

中期

来到本学期的重头戏——web的学习,学会认识URL,会观察网站网址,区分组成部分,练习用标签制作简单的页面,用html制作web页面,练习使用下拉列表选择框、无序列表、有序列表、定义列表。开始制作自己的导航条(HTML头部元素:<base>  定义了页面链接标签的默认链接地址。<style>  定义了HTML文档的样式。<link>  定义了一个文档和外部资源之间的关系)。练习样式表:行内样式表、内嵌样式表、外部样式表。分别练习定义三类选择器:HTML 选择器、CLASS 类选择器、ID 选择器。初步运用css做图片导航块,使用JS定义函数进行登录注册验证,完成登录与注册页面的前端,夜间模式的开启与关闭。

 

后期

开始Flask项目,加载静态文件,父模板的继承和扩展,连接mysql数据库,创建用户模型,建立mysql和app的连接。通过用户模型,对数据库进行增删改查操作。完成注册功能,将界面的数据存到数据库,redirect重定向登录页。完成登录功能,用session记住用户名,像操作字典一样操作‘session’:增加用户名‘session[‘username’]’=username。登录之后更新导航,用上下文处理器app_context_processor定义函数,获取session中保存的值,返回字典,在父模板中更新导航,插入登录状态判断代码。完成注销功能,清除session。发布功能的实现,制作首页的显示列表,首页列表显示全部问答,完成问答详情页布局,从首页问答标题到问答详情页,完成评论功能,完成评论列表显示及排序,个人中心显示,个人中心标签页导航,完成个人中心—导航标签,实现搜索功能(包括高级搜索等),最重要的是实现密码加密功能,还有模型分离与数据迁移,使代码更简洁更有保存用户的确定状态。

 

陈楠芸个人随笔链接

 

二、总结Python+Flask+MysqL的web建设技术过程

学习Python需要掌握如下基础知识以及相关技能。

1.Python基础知识(变量、语句、数据类型、数值类型、字符串、布尔类型、列表、字典、元组、条件语句、循环语句、函数、装饰器、面向对象、网络socket、爬虫)

2.Python基础库(模块、包、系统模块、三方模块)

3.python文件处理(读、写、执行、)

4.python字符统计

5.python数据排序

1.1初学者的困境

只记Python基础语法,却没什么鸟用。就像幼儿园,老师在黑板上写的‘肉’字,记住这个字咋写,一笔一划的记住,只需要半天,但是把这个词和你平时吃的东西绑定,以至于后面你想到这个字,就流口水,需要日常的重复训练。

同理:无方向的看书,看视频也没什么用,其实可以通过直接实战来上手,比如:文件操作、字符排序、网络编程。

错误的学习方法:

很多人在学习Python的时候常常会犯下面一种情况:买一本厚厚的编程指南,逼自己看完,记住每个语法,闭门看书三个月,吃透一本书,最后一行代码也写不出来。

正确的学习方法:

编程就像骑自行车,买一本<<骑自行车大全>>是没有什么用的。

正确姿势:掌握最基础的姿势,就可以骑上车出发了,实际联系几天,摔几跤,基本就学会了。

1.2对自我进行检测:

(1)给你一个字符串“come baby,python rocks!” 如何统计里面字母o出现的次数!

思路:遍历字符串,定义一个变量,每次o出现,都+1。

(2)给你一个字符串“come baby,python rocks!” 如何统计这里面所有字母出现的次数!(普通变量肯定无法完成。)

思路:需要使用字典这类复杂的数据结构处理,字母当key,出现的次数当value,每个key出现,对应的value+1。

(3)给你一个字符串“come baby,python rocks!” 如何统计这里面字母出现次数的前三名!

思路:排序,取出前三。

2.如何学习python库、模块

将多个代码块(按功能)定义到同一个文件中。别的文件中使用时则先导入模块,在调用模块内变量或函数。

(1)模块学习方法:

a.先知道有没有

b.用的时候在查

(2)模块命名要符合python变量的命名规范:

a.建议全小写英文字母和数字

b.避免与常用模块或第三方模块名称冲突

控制模块内代码在使用python mod.py时执行,在导入时不执行

a.通过Global内变量__name__进行判断

b.当以python mod.py运行脚本时__name__变量为__main__字符串

c.当以模块导入时__name__为模块名称字符串

3.包:

将不同模块文件放在不同文件夹内,包文件夹下面需要有__init__.py文件用以声明该文件为Python包。

使用时需要从包内导入模块后调用模块中变量和函数。

4.正确的编程思路以及学习方法:

计算机是人发明的,目的就是完成人的手动工作,跳不出人的思维。

(1)弄清楚想要解决的问题。

(2)思考自己如何去解决问题

(3)画流程图(伪代码编写)

(4)翻译成编程语言

(5)运行调试代码

重要:多抄、多写、多想、多问、多看、多听、多说

(1)学习编程就是为了解决实际的问题,把自己在工作或学习中的重复工作程序化

(2)谷歌和度娘

(3)加入开源社区(多看、多分享、多交流)

(4)参加培训辅导(仔细听课、跟上课堂学习,有问题做记录,课后查阅资料或请求他人)

(5)善于记录笔记,不断总结,查漏补缺。

Flask

Flask是一个面向简单需求小型应用的“微框架(microframework)”,Flask选择组件的额外工作给那些使用案例不适用标准ORM的开发者提供了更多的灵活性,同样也给使用不同工作流和模版化系统的开发者们带来了灵活性。
虽然Flask历史相对更短,但它能够学习之前出现的框架并且把注意力放在了微小项目上。它大多数情况被使用在一些只有一两个功能的小型项目上。例如 httpbin,一个简单的(但很强大的)调试和测试HTTP库的项目。Flask的hello world应用非常的简单,仅仅单个Python文件的7行代码就够了。

# from http://flask.pocoo.org/ tutorial

from flask import Flask

app = Flask(__name__)

@app.route("/") # take note of this decorator syntax, it's a common pattern

def hello():

    return "Hello World!"

if __name__ == "__main__":

app.run()

Flask没有bootstrapping工具的原因:没有它们的需求。从Flask主页上的Hello World特性看,没有构建Python web应用经验的开发者可以立即开始hacking。

对于各部分需要更多分离的项目,Flask有blueprints。例如,你可以将所有用户相关的函数放在users.py中,将销售相关的函数放在ecommerce.py中,然后在site.py中添加引用它们来结构化你的Flask应用。我们不会深入这个功能,因为它超出了我们展示demo应用的需求。

Flask对于那些开发小项目、需要快速制作一个简单的Python支撑的网站的开发者很有用。它提供小型的统一工具,或者在已有的API上构建的简单网络接口。可以快速开发需要简单web接口并不怎么配置的后端项目使用Flask将会在前端获益,如jitviewer提供了一个web接口来检测PyPy just-in-time的编译日志。

 

通过missdu的教学,我基本熟悉python的基础操作,python是现如今运用的最广的语言之一,能够在学校学习到这门技术真的很不错。

posted on 2017-12-30 12:09  004陈楠芸  阅读(5396)  评论(0编辑  收藏  举报