趣学python教孩子学编程_《趣学Python——教孩子学编程》学习笔记第1-3章

第1章 Python不是大蟒蛇

1.1 关于计算机语言

计算机程序是一组让计算机执行某种动作的指令。软件就是计算机程序的集合。

一种编程语言就是一种特定的与计算机交谈的方式,这种方式使用计算机和人都能理解的指令。

Python编程语言的名字来自电视剧《蒙提·派森的飞行马戏团》(Monty Python’s Flying Circus),而不是大蟒蛇。

1.2 安装Python

1.2.1 在Windows 7上安装Python

1.2.2 在苹果OS X上安装Python

1.2.3 在Ubuntu上安装Python

1.3 当你安装好Python以后

1.4 保存Python程序

第一个程序 hello world!

>>> print("hello world!")

hello world!

第2章 计算与变量

2.1 用Python来做计算

用Python做乘法运算

>>> 8*3.57

28.56

假设你在后院里挖出了一个装着20枚金币的袋子。第二天,你偷偷跑到地下室,把这些金币放进你爷爷发明的蒸汽动力的复制机里(很幸运的是你刚好能把20枚金币放进去)。你听到机器在吵闹,几个小时后,它吐出10枚闪闪发光的新的金币来。如果在过去一年中的,你每天都这样做一遍的话,在你的财宝箱里会有多少金币?

>>> 10*365+20

3670

如果要是有一只乌鸦发现了你卧室中闪亮的金子,而且每周它都能成功地飞进来并设法偷走3枚金币,那会怎样呢?

>>> 10*365+20-3*52

3514

以上只是一个很简单的程序。在这本书里,你将学到如何把这些想法扩展开,写出更有用的程序来。

2.1.1 Python的运算符

Python用来做数学运算的那些基本符号叫做“运算符”,包含加(+)减(-)乘(*)除(/)

2.1.2 运算的顺序

乘法和除法总是在加法和减法之前,除非用括号来控制运算的顺序。

2.2 变量就像是标签

在编写程序时“变量”这个词是指一个存储信息的地方,例如数字、文本、由数字和文本组成的列表等等。另一种看待变量的方式是它就像贴在东西上的标签。

例如,要创造一个叫fred的变量,我们用等于号(=)然后告诉Python这个标签是贴在什么信息上的。

下面,我们创建了fred这个变量并告诉Python它给数字100加上了标签

>>> fred = 100

>>> print(fred)

100

变量名可以由字母、数字和下划线字符(_)组成,但是不能由数字开头。从一个字母(如a)到长长的句子都可以用来做变量名(变量名不能包含空格,所以要用下划线来分隔单词)。

2.3 使用变量

改造2.1中金币的计算方式

>>> found_coins = 20

>>> magic_coins = 10

>>> stolen_coins = 3

>>> magic_coins * 365 + found_coins - stolen_coins * 52

3514

假如你在窗子上粘贴了一个稻草人,乌鸦这回只能偷到两枚金币而不是三枚了呢?

如果我们用了变量,只要简单地把变量改为新的数字,那么在算式中每个用到它的地方都会改变。我们可以这样输入来把变量stolen_coins改为2:

>>> stolen_coins = 2

>>> magic_coins * 365 + found_coins - stolen_coins * 52

3566

如果你在恰当的时刻在边上猛敲一下你爷爷的发明,那么它每次会多吐出3枚金币呢?

>>> magic_coins = 13

>>> magic_coins * 365 + found_coins - stolen_coins * 52

4661

当然,用变量来做这样简单的计算,它的用处仍然很有限。我们还没见过它真正大展拳脚。现在,只要记住变量就是一种给事物加标签的方法,从而让我们以后可以使用它们就可以了。

第3章 字符串、列表、元组、字典

在第2章里,我们用Python做了一些基本的运算,并且学习了变量。在这一章里,我们会学习Python编程中的另一些内容:字符串(string)、列表(list)、元组(tuple)和字典(map)。你还会学到列表、元组和字典是如何用来存储成批的东西的。

3.1 字符串

3.1.1 创建字符串

单引号创建

>>> fred = 'What is pink and fluffy? Pink fluff!!'

>>> print(fred)

What is pink and fluffy? Pink fluff!!

双引号创建

>>> fred = "What is pink and fluffy? Pink fluff!!"

>>> print(fred)

What is pink and fluffy? Pink fluff!!

多行字符串,三个单引号创建,可以在行之间输入回车

>>> fred = '''What is pink and fluffy? Pink fluff!!

How do dinosaurs pay their bills?

With tyrannosaurus checks!'''

>>> print(fred)

What is pink and fluffy? Pink fluff!!

How do dinosaurs pay their bills?

With tyrannosaurus checks!

3.1.2 处理字符串相关的问题

打印文本:He said,”Aren’t can’t shouldn’t wouldn’t.”

方法一

>>> single_quote_str = 'He said,"Aren't can't shouldn't wouldn't."'

>>> print(single_quote_str)

He said,"Aren't can't shouldn't wouldn't."

方法二

>>> double_quote_str = "He said,"Aren't can't shouldn't wouldn't.""

>>> print(double_quote_str)

He said,"Aren't can't shouldn't wouldn't."

方法三

>>> multi_quote_str = '''He said,"Aren't can't shouldn't wouldn't."'''

>>> print(multi_quote_str)

He said,"Aren't can't shouldn't wouldn't."

3.1.3 在字符串里嵌入值

如果你想显示一条使用变量中内容的信息,你可以用%s来把值嵌入到字符串里面。

实例一

>>> myscore = 100

>>> message = 'I scored %s points'

>>> print(message % myscore)

I scored 100 points

实例二

>>> joke_text = '%s:a device for finding furniture in the dark'

>>> bodypart1 = 'Knee'

>>> bodypart2 = 'Shin'

>>> print(joke_text % bodypart1)

Knee:a device for finding furniture in the dark

>>> print(joke_text % bodypart2)

Shin:a device for finding furniture in the dark

实例三

>>> nums = 'What did the number %s say to the number %s? Nice belt!!'

>>> print(nums %(0,8))

What did the number 0 say to the number 8? Nice belt!!

3.1.4 字符串乘法

10乘以5等于什么?答案当然是50。可是10乘以a呢?下面是Python给出的答案

>>> print(10*'a')

aaaaaaaaaa

3.2 列表比字符串还强大

“蜘蛛腿、青蛙脚趾头、蝾螈眼、蝙蝠翅、鼻涕虫油和蛇蜕皮”,这不是普通的采购清单(除非你是个巫师),不过我们要用它来作为例子来看看字符串和列表有什么不同。

我们可以把清单上的这一系列元素用字符串的形式放到变量wizard_list中:

>>> wizard_list = 'spider legs, toe of frog, eye of newt, bat wing, slug butter, snake dandruff'

>>> print(wizard_list)

spider legs, toe of frog, eye of newt, bat wing, slug butter, snake dandruff

我们也可以创建一个列表(list):

>>> wizard_list = ['spider leg','toe of frog','eye of newt','bat win','slug butter','snake dandruff']

>>> print(wizard_list)

['spider leg', 'toe of frog', 'eye of newt', 'bat win', 'slug butter', 'snake dandruff']

字符串不容易操纵,而列表却可以方便地操纵里面的元素

>>> print(wizard_list[2])

eye of newt

>>> wizard_list[2] = 'snail tongue'

>>> print(wizard_list)

['spider leg', 'toe of frog', 'snail tongue', 'bat win', 'slug butter', 'snake dandruff']

>>> print(wizard_list[2:5])

['snail tongue', 'bat win', 'slug butter']

列表可以用来存放各种元素

>>> some_numbers = [1,2,5,10,20]

>>> some_strings = ['Which','witch','is','better']

>>> numbers_and_strings = ['Which',5,10,'witch','is',20,'better']

列表中甚至可以保存其他列表

>>> numbers = [1,2,5,10,20]

>>> strings = ['Which','witch','is','better']

>>> mylist = [numbers,strings]

>>> print(mylist)

[[1, 2, 5, 10, 20], ['Which', 'witch', 'is', 'better']]

3.2.1 添加元素到列表(append)

>>> wizard_list = ['spider leg','toe of frog','eye of newt','bat win','slug butter','snake dandruff']

>>> wizard_list.append('bear burp')

>>> print(wizard_list)

['spider leg', 'toe of frog', 'eye of newt', 'bat win', 'slug butter', 'snake dandruff', 'bear burp']

3.2.2 从列表中删除元素(del)

>>> del wizard_list[2]

>>> print(wizard_list)

['spider leg', 'toe of frog', 'bat win', 'slug butter', 'snake dandruff', 'bear burp']

3.2.3 列表上的算数(+和*)

>>> numbers = [1,2,5,10,20]

>>> strings = ['Which','witch','is','better']

>>> print(numbers + strings)

[1, 2, 5, 10, 20, 'Which', 'witch', 'is', 'better']

>>> numbers = [1,2,5,10,20]

>>> print(numbers * 3)

[1, 2, 5, 10, 20, 1, 2, 5, 10, 20, 1, 2, 5, 10, 20]

3.3 元组

元组就像是一个使用括号的列表

>>> fibs = (0,1,1,2)

>>> print(fibs[3])

2

元组与列表不同的是,元组一旦创建就不能再做改动了,如果改动元组里的元素,会报错:

>>> fibs = (0,1,1,2)

>>> fibs[0]=4

Traceback (most recent call last):

File "", line 1, in

fibs[0]=4

TypeError: 'tuple' object does not support item assignment

3.4 Python里的map不是用来指路的

字典与列表和元组一样,也是一堆东西的组合,不同的是,字典中的每个元素都有一个键(key)和一个对应的值(value)

假设我们有一个列表,上面是一些人和他们最喜爱的运动,我们可以把这个信息放到Python的列表中,名字在前,喜爱的运动在后。

>>> favorite_sports = ['Ralph Williams, Football','Michael Tippett, Basketball','Edward Elgar, Netball','Frank Bridge, Rugby']

如果我问你 Edward Elgar 最喜爱什么运动,你可能需要浏览整个列表才能找到答案。但是,如果列表中有1000个人呢?这就用到字典了

查询操作

>>> favorite_sports = {'Ralph Williams':'Football','Michael Tippett':'Basketball','Edward Elgar':'Netball','Frank Bridge':'Rugby'}

>>> favorite_sports['Edward Elgar']

'Netball'

删除操作

>>> del favorite_sports['Edward Elgar']

>>> print(favorite_sports)

{'Ralph Williams': 'Football', 'Michael Tippett': 'Basketball', 'Frank Bridge': 'Rugby'}

替换操作

>>> favorite_sports['Ralph Williams'] = 'Ice Hockey'

>>> print(favorite_sports)

{'Ralph Williams': 'Ice Hockey', 'Michael Tippett': 'Basketball', 'Frank Bridge': 'Rugby'}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值