第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'}

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

  1. 计算机安全原理与实践_《计算机图形学原理及实践》学习笔记之第三章

    第三章 一个古老的绘制器 1525年,阿尔布雷·丢勒 制作了一幅木刻画,展示了一种可以绘制任一形体透视图的方法. 本章我们将开发一个软件来模拟丢勒展示的方法. 丢勒视角绘制算法的伪代码 Input: ...

  2. 《Fluent Python》学习笔记:第 8 章 对象引用、可变性和垃圾回收

    本文主要是 Fluent Python 第 8 章的学习笔记.这部分主要是介绍了变量.引用.对象.深拷贝.浅拷贝.垃圾回收等.本章虽然枯燥,但是非常有用. <Fluent Python>学 ...

  3. [go学习笔记.第十六章.TCP编程] 3.项目-海量用户即时通讯系统-redis介入,用户登录,注册

    1.实现功能-完成用户登录 在redis手动添加测试用户,并画出示意图以及说明注意事项(后续通过程序注册用户) 如:输入用户名和密码,如果在redis中存在并正确,则登录,否则退出系统,并给出相应提示 ...

  4. 硬件趣学python编程_没有人比我更懂编程,慧编程'吮指编辑器',简单快乐学python...

    咳咳! 大家好,我是偶尔写文章的康康老师. 今天跟大家介绍的是慧编程家的,睡在Scratch上铺的兄弟--慧编程Python编辑器. 这是一款集才华和颜值为一体的'吮指'编辑器! 忘记肯德基,你的手指 ...

  5. 澄海哪里学机器人编程_终于发现小孩有必要学机器人编程吗

    让孩子学习编程的目的,就像其他教育方式一样,只是希望能帮助孩子找到他的兴趣点,打开孩子的获取知识和能力的大门.一起来看看一篇小孩有必要学机器人编程吗. 小孩有必要学机器人编程吗 编程和英语类似,属于基 ...

  6. 有java基础学python需要多长时间_怎么自学python,大概要多久?

    我泼点冷水:建议还是要慎重选择上来新手就自学Python.如果想认认真真打好基础,还是要至少从Java学起.换句话说,先学会Java,然后再学Python不迟. Python的最大优势是简单明快,最大 ...

  7. python如何初始化对象数组_如何理解Python中的面向对象编程?

    (由Python大本营付费下载自视觉中国) 作者 | Radek Fabisiak 译者 | 弯月,责编 | 郭芮 出品 | CSDN(ID:CSDNnews) 现如今面向对象编程的使用非常广泛,本文 ...

  8. 计算机编程导论python程序设计答案-学堂在线_计算机科学与Python编程导论_作业课后答案...

    学堂在线_计算机科学与Python编程导论_作业课后答案 答案: 更多相关问题 近代中国完全沦为半殖民地半封建社会的标志是:A.<马关条约>B.<辛丑条约>C.<凡尔赛和 ...

  9. python都有什么包_常用的Python包有哪些,如何快速掌握Python编程

    Python入门简单.功能强大,是很多想要入行IT开发行业人士的主要选择.Python包可以帮助Web开发人员快速和容易地创建应用程序和功能,因此很多企业在招聘时都会考察求职者对于Python包的掌握 ...

  10. 初学者怎么自学python编程_怎样自学python编程?从零开始学习python,400集免费教程!...

    作为小白,在学习Python的时候,必然会走一定的弯路,有人在弯路上走丢了,有人走出了弯路.我就是属于还未走出弯路的同学,所以我想谈谈我的Python学习之路. 01先了解一下什么是python‍? ...

最新文章

  1. Python中datetime类错误
  2. GLSL三种修饰符区别与用途(uniform,attribute和varying)
  3. Flutter+FaaS一体化任务编排的思考与设计
  4. git checkout之一 HEAD基本和detached 状态
  5. 离线实时与api对应的关系+未来流行度
  6. 变压器 5g_T5:文本到文本传输变压器
  7. 初尝微信小程序2-基本框架
  8. redis基本类型和使用
  9. ARM的UART实验
  10. 特斯拉=车祸多?马斯克回击
  11. 定时器翻转io口的好处_STM32 定时器输出比较翻转模式
  12. Windows、Linux、Mac OS下的锐捷认证的程序——mentohust
  13. flash 中.Swf 格式的文字 转化为 word 或pdf 或 xps
  14. 影响我此生的几首歌(转载)
  15. Java杂谈——求所有的4位吸血鬼数字
  16. mac电脑使用小技巧
  17. css实现箭头上下跳动动画
  18. k8s中helm的使用
  19. 评估企业是否适合开发复合业务服务
  20. 机器人履带底盘的悬挂和传动

热门文章

  1. hpm128无法共享打印_m126及m128打印机共享问题
  2. Imagenet 完整数据集下载
  3. html5 气泡文字提示框,css实现气泡文字提示框代码教程
  4. C#中的WinForm问题——如何设置窗体的大小为超过屏幕显示的最大尺寸?
  5. 追剧达人观看电影源码
  6. android 8 音质,体验中国好音质 8款HiFi音质手机推荐
  7. Dynasty Puzzles CodeForces - 191A+DP二维
  8. 均匀线列阵波束响应与阵元间距的关系—麦克风阵列系列(六)
  9. 一步步带你用Java实现双向链表(超详细)
  10. android开发之eclipse调试debug模式详解