美文网首页
Python学习

Python学习

作者: nonviolence | 来源:发表于2018-06-02 05:48 被阅读0次

一直觉得编程是一种应该学会,而且可以学会的东西,但现实情况是一直都没有开始正式学,这里算是个起点,来了了这个心愿。

这几天在极客时间入手了几个课程,其中就有大牛尹会生的Python入门课,已经决定要正式来学习这个东西,就在这里记录下来吧,与诸君共勉。

Python学习大纲

还是,在动脑筋之前,先做体力活,把课程大纲在这里抄一下,按照某琳的整理分类法,这其实体现了Python在老师脑海中的样子,很有意义

Python的介绍和安装

  1. Python语言的特点
  2. Python的发展历史与版本
  3. Python的安装

Python基础语法

  1. Python程序的书写规则
  2. 基础数据类型
  3. 变量的定义和常用操作

序列

  1. 序列的概念
  2. 字符串的定义和使用
    3.字符创的常用操作
  3. 元组的定义和常用操作
  4. 列表的定义和常用操作

条件与循环

  1. 条件语句
  2. for循环
  3. while循环
  4. for循环语句中的if嵌套
  5. while循环语句中的if嵌套

映射与字典

  1. 字典的定义和常用操作
  2. 列表推导式与字典推导式

文件和文件输入输出

1.文件的内建函数
2.文件的常用操作

错误和异常

  1. 异常的检测和处理

函数

  1. 函数的定义和常用操作
  2. 函数的可变长参数
  3. 函数的变量作用域
  4. 函数的迭代器与生成器
  5. lambda表达式
  6. Python内建函数

具体学习中,以这个内容为框架,具体填充细节进去,后续呈现出来。
2018-6-2 早上5:47


Python的介绍和安装

  1. Python语言的特点
  2. Python的发展历史与版本
  3. Python的安装

Python基础语法

  1. Python程序的书写规则
  2. 基础数据类型
  3. 变量的定义和常用操作

序列

  1. 序列的概念
  2. 字符串的定义和使用
    3.字符创的常用操作
  3. 元组的定义和常用操作
  4. 列表的定义和常用操作

条件与循环

  1. 条件语句
  2. for循环
  3. while循环
  4. for循环语句中的if嵌套
  5. while循环语句中的if嵌套

映射与字典

  1. 字典的定义和常用操作
  2. 列表推导式与字典推导式

文件和文件输入输出

1.文件的内建函数
2.文件的常用操作

错误和异常

  1. 异常的检测和处理

墨菲定律,会出错的事情一定会出错,编写程序也是这样
错误不等于异常
异常实在出现错误时采用正常控制流以外的操作
异常处理:检测到错误,引发异常,对异常进行捕获的操作
如何捕获异常

try:
  <监控异常>
except Exception[, reason]
finally:
  <操作项> // 如无论异常是否发生都执行

// 案例
try:
  year = int(input('input years'))
except ValueError:
  print('年份请输入数字')  

// 可捕获多个异常
except (ValueError, AttributeError, KeyError)

# 捕获所有错误
try:
   print(1/'a')
except Exception as e:
   print('%s',%e)

# 实例
try:
  a = open('name.txt')    #打开一个文件
except Exception as e:  # 捕获错误
   print(e)  #打印错误说明
finally:
  a.close  #无论如何都关闭文件

函数

  1. 函数的定义和常用操作

新的需求:统计三国演义中哪些主角光环比较明显(以出现次数为指标),并且做兵器谱。
三国演义全本(sanguo.txt)
提取人物(name.txt)
提取名字(weapen.txt)
提取全文

函数:对程序逻辑进行结构化的一种编程方法
小技巧:批量注释代码功能,选中代码,contrl+/

#函数的定义
def 函数名称():
  代码
  return 需要返回的内容

#函数的调用
函数名称()


  1. 函数的可变长参数
  2. 函数的变量作用域
  3. 函数的迭代器与生成器
  4. lambda表达式
  5. Python内建函数

现在是6月3号,上午10点35
已经将极客时间的Python课程现有上传部分学了一遍,到内建函数部分(今天早上学习了 filter,map,reduce,zip等函数,但课程只是将最浅层的函数使用讲解了,后续还需要自己进行更深入的探索)。

在这里贴下昨天做三国主角出现次数的代码

import re
def find_item( hero ):
    with open('sanguo.txt',encoding='GB18030' ) as f:
        data = f.read().replace('\n','')
        name_num = re.findall(hero,data)
        # print('主角 %s 出现了 %s 次' %(hero,len(name_num)))

    return len(name_num)

#读取人物信息
name_dict = { }
with open('name.txt') as f:
    for line in f:
        names = line.split('|')
        for n in names:
#          print(n)
            name_num = find_item(n)
            name_dict[n] = name_num

#下面一句是没有学过的代码
name_sorted = sorted(name_dict.items(), key=lambda  item:item[1], reverse = True )
#最终输出,出现次数排名前十的人物
print(name_sorted[0:10])

昨天做三国的例子时,被中文的编码格式搞惨了,最后发现主要的原因是我在pycharm中项目的Python interpreter设置的是python2 ,真是个神乌龙
不过即使后来切换过了了 interpreter,但是由于例子中用的sanguo.txt的文字是中文繁体,转换成GB18030也只是让乱码少了些,最终得到的结果并不准确,但方法是基本正确的。

那现在就需要回顾下这几天学到的Python知识,顺便把作业做了,
然后等待新的一批课程更新。

整个课程的知识体系


image.png
  • 第一行Python代码
    输出
    注释
    缩进
    整数
    浮点数
    字符串
  • 变量(编写一个网络带宽选择器)
    变量赋值
    关键字
    变量命名
    命名规范
    作业
  • 序列(编写计算生肖和星座案例1.0)
    序列
    字符串
    列表
    元祖
    作业
  • 条件和循环(编写计算生肖和星座案例2.0)
    字典类型
    集合类型
    列表推导式
    作业
  • 文件和输入输出(编写三国人物和兵器排行榜案例1.0)
    文件对象
    文件操作的内建函数
  • 文件操作的内建函数
    异常的定义与产生
    异常检测
    异常处理
    作业
  • 函数(编写三国人物和兵器排行榜案例2.0)
    调用函数
    自定义函数的编写
    可变长参数
    变量的作用域
    递归
    生成器
    迭代器
    Lambda表达式
    闭包
    装饰器
    作业

相关文章

网友评论

      本文标题:Python学习

      本文链接:https://www.haomeiwen.com/subject/ilmlsftx.html