编程小白的第一本python书 (读书笔记)


变量与字符串

  • 变量的定义与赋值 answer = 42
  • file = open(' Users/yourname/Desktop/file','w') file.write('hello world!')

  • 上面代码的意思是:在桌面上打开一个文件(路径得看个人具体情况),w的意思是,如果有则在文件里写入hello world,如果没有则创建一个文件。

  • Mac可以通过把一个文件拖入到终端里来看文件路径。

  • 字符串用单引号跟双引号括起来都可以,特别注意:三个单引号是可以跨行的超长字符串

字符串.png
运行结果.png
  • 不同数据类型不可以直接合并,合并不同数据类型,需要使用数据类型转换

e.g

合并不同数据类型
运行结果
  • 需要使用中文注释的时候,记得在开始处加#utf-8

  • 字符串相乘,其实就是几个字符串相加合并

字符串相乘
  • 一个更复杂的例子

一个更复杂的例子
  • 字符串的分片与索引

字符串可以通过string[x]的方式进行索引、分片,也就是加一个[]。字符串的分片实际上是可以看作是从字符串中找出来你要截取的东西,复制出来一小段你要的长度,存储在另一个地方,而不会对字符串这个源文件改动。分片获得的每个字符串可以看作是原字符串的一个副本

e.g.

切片例子
一个项目例子
  • 字符串的方法

只显示号码后四位
  • 字符串格式化符

英语填空题
利用键盘输入填充空缺

函数

  • python的内建函数

python内建函数

Python官网中各个函数的介绍: https://docs.Python.org/3/library/functions.html

  • 创建函数

    def function (arg1, arg2):
        return 'Something'
    

注意语句块要缩进!不要漏掉冒号!

摄氏度转华氏度函数

  • 函数调用

函数调用
  • 两个小练习

练习一:设计一个重量转换器,输入以“g”为单位的数字后返回换算成“kg”的结果

重量转换器

当输入为1000时,


运行结果

练习二:设计一个求直角三角形斜边长的函数 (两条直角边为参数,求最长边)

求直角边
  • 传递参数与参数类型

参数有两种类型: 位置参数 (position argument)
关键词参数 (keyword argument)

求梯形面积

位置参数
关键词参数

混合方式传入参数


混合传入
  • 默认参数

默认参数
  • 设计自己的函数

open函数与write方法
运行效果

设计一个函数,需求是:传入参数name与msg就可以控制在桌面写入的文件名称和内容的函数text_create,并且如果当桌面上没有这个可以写入的文件时,那么就创建一个之后再写入。(敏感词过滤器的第一部分)

可以自定义文件名跟内容的函数

敏感词过滤函数:定义一个函数text_filter,传入参数 word, censored_word和changed_word实现过滤,敏感词censored_word默认为lame,替换词changed_word默认为Awesome。

敏感词过滤

把两个函数合并:创建一个名为text_censorded_create的函数,功能是在桌面上创建一个文件,在其中输入文字,但如果信息中包含敏感词的话就会被默认过滤后写入文件。

text_censorded函数
  • 一些数学上的操作符

数学运算

循环与判断

  • 布尔表达式

布尔表达式
  • 比较运算

python的比较运算符跟C语言基本一致

一些复杂的运算


复杂的比较运算
需要注意的小问题
  • 成员运算符与身份运算符 (Membership&Identify Operators)

列表

列表

成员运算符和身份运算符的关键词是 inis

用is操作符来进行身份比对

布尔值

布尔值

python的布尔运算符是直接用英文的and ,or,not 逻辑内涵还是基本的与或非不变。

布尔运算符
  • 条件控制

python中的if else 跟C语言一个用法

if else

用布尔变量优化条件表达式

用布尔变量优化条件表达式

多条件判断跟C语言写法略有不同,主要是中间的部分用的是elif, 用法上没区别

加重置密码功能的登陆
  • 循环

for循环

for循环语法
一个for循环例子

for循环与if结合的例子

for与if

嵌套循环

九九乘法表

while循环

while循环
一个更复杂的例子

注意:这里的while可以理解为是if循环版,可以使用while-else结构。

  • 练习题

练习一:


练习一
解法一
解法二

练习二:

练习二
复利

练习三:
打印一到一百内的偶数

打印1到100内的偶数

综合练习:

综合练习
猜大小游戏

数据结构

存储大量数据的容器,在python中称之为内置数据结构(Built-in Data
Structure)。

我们日常使用的网站,移动应用,甚至是手机短信都依赖于数据结构来进行存储,其中的数据以一种特定的形式存储在数据结构中,在用户需要时被拿出来展现。

python中有四种数据结构,分别是:列表、字典、元组、集合。

四种数据结构
  • 列表

列表有点像C语言里的数组,只不过,它里面可以放所有python类型,不需要都是同一种类型,这点和数组不同

列表

列表的特点

在列表中插入元素

插入

删除列表中的元素

删除
下标方式删除
用del关键字删除

列表元素的替换

替换

列表的索引

索引
  • 字典

字典
字典的书写

添加字典元素

添加

删除字典元素

删除

查找字典元素

查找
  • 元组

元组
  • 集合

集合

因为集合是无序的,所以逻辑上当然是不可以索引的。

  • 数据结构的一些技巧

数据结构的一些技巧

关于zip函数

用zip进行两个列表中元素的操作
用zip生成元组对列表

注意:

在python 3.0中zip()是可迭代对象,使用时必须将其包含在一个list中,方便一次性显示出所有结果

list(zip(a,b))
[(1, 4), (2, 5), (3, 6)]

zip()参数可以接受任何类型的序列,同时也可以有两个以上的参数;当传入参数的长度不同时,zip能自动以最短序列长度为准进行截取,获得元组。

推导式

推导式
推导式格式

推导式,其实就是在一定范围/条件 内 按照一定格式来生成新的数据结构

更复杂的例子

**遍历列表时获取元素的索引

如何获取列表索引?

enumerate函数获取列表索引
  • 综合项目

用split函数得到独立的单词
代码例子
用count来词频统计
一些问题

解决问题后的最终版本

词频统计
代码讲解

  • 定义一个类

定义类
  • 类的实例化

类的实例化
  • 类属性的引用

类属性的引用
  • 实例属性

实例属性
  • 实例方法

实例方法
关于self
更多参数
  • 初始化方法

会给实例增加属性的初始化方法
会给实例增加方法的初始化方法
带有参数的初始化方法
  • 类的继承

父类
子类
继承和覆盖
  • 类属性和实例属性

类属性和实例属性的调用
被隐藏的类属性_dict_
属性引用机制
  • 内建类

内建类
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,163评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,301评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,089评论 0 352
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,093评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,110评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,079评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,005评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,840评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,278评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,497评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,667评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,394评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,980评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,628评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,649评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,548评论 2 352

推荐阅读更多精彩内容