大学计算机基础python学多久_怎么自学python,大概要多久?
我把Python学习分成了三个阶段
第一个阶段:Python的基础知识
初学者需要对Python的基础知识做一个全方位的了解,要清楚什么是条件选择,循环的作用,List集合和Dict字典集合;什么是函数,如何进行异常处理,什么是文件和目录,文件的读取和写入;如何写Python模块,如何在另外一个程序里面去引入模块;熟悉常见的标准库,比如:时间日期,随机数,正则表达式等;要学会使用面向对象的思维来进行编程;总而言之,阶段一主要是打基础,需要掌握一些基本的Python语句,但是正在的开发核心是Web端的开发,所以就有了后面的阶段二和阶段三。
第二个阶段:MVC的Web框架
Web框架很多,这里建议大家学习Django框架,因为Django是一个企业级的框架,目前企业应用的最多;阶段二除了涉及到Django框架之外,还涉及到很多前端的知识,包括HTML、CSS、JavaScript、jQuery等等;
在阶段二除了前后端,还包含数据库,所有的开发如果没有后端的数据是没有意义的,所以需要数据库来存储数据。
如果想真正理解MVC这种设计模型(在Django里面叫MVT)真正运行的过程是什么,当对Mysql数据库的增删改查熟悉之后,就可以使用Pymysql这个模块来操作后台的mysql数据库了。在和数据库交互的时候有两个模式,模式一:原生的SQL,模式二:ORM;原生的SQL语句简单了解即可,后面写程序主要是通过ORM,所以ORM也是必须要掌握的内容。
当阶段二完成后,一些常见的或者不是特别复杂的Web应用程序就可以独立完成了,但是写出来的程序是前后端没有分离的,如果你想对开发的认知提高一个层次,第三个阶段就显得尤为重要,Web应用程序的前后端的框架是一定要分离开的。
第三个阶段:前后端分离的Web框架
最后一个阶段除了涉及到后端的Django框架之外,还必须要掌握前端的框架,比如:VUE 或者React等等;要知道json这样的文本格式是怎么回事;Ajax的异步请求应该如何写,前后端分离后,前端就是通过Ajax和后端交互;
后端部分在之前的阶段二对Django做了基本的了解,在阶段三就需要知道FBV和CBV,在阶段二写的所有的VUE都是基于函数的,在阶段三写的VUE一定要基于类。在后端一个非常重要的设计模型REST Framework,一定要学会使用REST Framework这种设计模型为前端提供API;在阶段三建议还要学习一个数据库mongoDB,来更好的完成数据库调用。
三个阶段都掌握后,从事开发相关的工作,月薪不会低于10k,当然了,你也可以从事人工智能相关的行业
那就需要你多专研算法了
我这里有很多学习过程中积累的干货资料
有需要的参考下图找我来拿
type exec_opts =
{ bound: int
; skip_throw: bool
; function_summaries: bool
; entry_points: string list
; globals: Domain_used_globals.r }
module Make (Dom : Domain_intf.Dom) = struct
module Stack : sig
type t
type as_inlined_location = t [@@deriving compare, sexp_of]
val empty : t
val push_call :
Llair.func Llair.call -> bound:int -> Dom.from_call -> t -> t option
val pop_return : t -> (Dom.from_call * Llair.jump * t) option
val pop_throw :
t
-> init:'a
-> unwind:
( Llair.Reg.t list
-> Llair.Reg.Set.t
-> Dom.from_call
-> 'a
-> 'a)
-> (Dom.from_call * Llair.jump * t * 'a) option
end = struct
type t =
| Return of
{ recursive: bool (** return from a possibly-recursive call *)
; dst: Llair.Jump.t
; formals: Llair.Reg.t list
; locals: Llair.Reg.Set.t
; from_call: Dom.from_call
; stk: t }
| Throw of Llair.Jump.t * t
| Empty
[@@deriving sexp_of]
type as_inlined_location = t [@@deriving sexp_of]
(* Treat a stack as a code location in a hypothetical expansion of the
program where all non-recursive functions have been completely
inlined. In particular, this means to compare stacks as if all Return
frames for recursive calls had been removed. Additionally, the
from_call info in Return frames is ignored. *)
let rec compare_as_inlined_location x y =
if x == y then 0
else
match (x, y) with
| Return {recursive= true; stk= x}, y
|x, Return {recursive= true; stk= y} ->
compare_as_inlined_location x y
| Return {dst= j; stk= x}, Return {dst= k; stk= y} -> (
match Llair.Jump.compare j k with
| 0 -> compare_as_inlined_location x y
| n -> n )
| Return _, _ -> -1
| _, Return _ -> 1
| Throw (j, x), Throw (k, y) -> (
match Llair.Jump.compare j k with
| 0 -> compare_as_inlined_location x y
| n -> n )
| Throw _, _ -> -1
| _, Throw _ -> 1
| Empty, Empty -> 0
总结
以上是生活随笔为你收集整理的大学计算机基础python学多久_怎么自学python,大概要多久?的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 组成新数python_大数相加 简单实现
- 下一篇: python常用数据结构_Python入