image.png

注:本书基于python2讲解

前言

编程就是告诉计算机要做什么。计算机只是一些没有生命的机器,它们自己不知道该做什么,一切都得你来告诉它,而且你还必须把细节都说清楚。

指令(instruction)就是下达给计算机的一个基本命令,通常要求计算机做某件特定的事情。

计算机程序是由多个指令组成的。软件就是你的计算机上运行的程序。

所有计算机在内部都使用二进制(1和0是一种二进制的编程)。利用计算机编程语言,我们可以先用一种自己能够理解的方式写程序,然后把它翻译成二进制供计算机使用。

怎么样使用本书

□ 验证例子。

□ 输入程序。

□ 做习题。

□ 放轻松。

不要担心犯错误。实际上,你得尽量多犯错误!我认为,犯错误然后搞清楚怎么找出错误并改正是最好的一种学习方法。

在编程中,除了多费一点时间,你的错误通常不会带来其他损失。

第1章 出发吧

1.1 安装python

1.2 从IDLE启动python

IDLE是一个python shell(外壳)。这是一个通过键入文本与程序交互的途径,可以利用这个shell与python交互。

IDLE本身还是一个GUI(图形用户界面)。GUI就是图形用户界面(graphical user interface),表示界面中有窗口、菜单、按钮、滚动条等等。没有GUI的程序称为文本模式(text-mode)程序、控制台(console)程序或命令行(command-line)程序。

'>>>是python提示符。提示符是程序等待你键入信息时显示的符号。

1.3 来点指令吧

print是一个python关键字。

关键字(keyword)是作为python语言一部分的特殊词,也称为保留字(reserved word).

1.4 与python交互

执行命令、指令或程序就表示“运行”或者“发生”,这只是运行或发生的另外一种形象说法。

几乎所有的计算机程序和语言都是用*符号作为乘号。“星号”或“星”。

print("Hello " * 20)

1.5 该编程了

文本编辑器能把程序保存到硬盘上。

文件名末尾的.py部分告诉计算机这是一个python程序,而不是普通的文本文件。

1.6 运行你的第一个程序

1.7 如果出问题

(1)语法错误(syntax error):就是一种程序语言的拼写和文法规则,意味着你键入的某个内容不是正确的代码。

(2)运行时错误(runtime error):运行程序前python无法检测出来的错误,只是在程序运行时才会发生。

在python中,不能把两个完全不同的东西加在一起,比如说数字和文本。

1.8 你的第二个程序

第2章 记住内存和变量

程序就是下达给计算机的一系列指令。

几乎所有真正有用或有意思的程序都还有一些别的特征:

□ 都有输入(input);

□ 都会处理(process)输入;

□ 都会产生输出(output).

2.1 输入、处理和输出

为了处理输入,计算机必须记住它们,或者把它们保存在某个地方。计算机会把这些内容(包括输入以及程序本身)保存在它的内存中。

2.2 名字

firs = 5

second = 3

print(first + second)

2.3 名字里是什么

变量名规则:

名字是区分大小写的。

变量名必须以字母或下划线字符开头,不能以数字开头。4fun ×

变量名中不能包含空格。

2.4 数字和字符串

字符或字符序列(字母、数字或标点符号)称为一个字符串。

字符串的开头和结尾必须使用同种类型的引号。(单引号或双引号)

字符串拼接

长字符串,跨多行的字符串,使用一种特殊的字符串,三重引号字符串

image.png

2.5 它们有多“可变”

2.6 全新的我

变量自增(increment)

变量自减(decrement)

程序可以在任何时间对变量重新赋值。

变量区分大小写。

专业的python程序员给变量命名时几乎总是以小写字母开头。

第3章 基本数学运算

3.1 四大基本运算

在python3中做整除,需要使用两个前斜杠(//)

print(3/2)

print(3//2)

3.2 操作符

+、-、、/符号都称为操作符。=也是一个操作符,称为赋值操作符。

所操作的东西称为操作数。

image.png

3.3 运算顺序

3.4 另外两个操作符

1 指数——自乘为一个幂(**操作符)

print(3**5)

2 取余——求余数(%取余操作符)

print(7%2)

3 +=(自增) 和 -=(自减)

image.png

3.5 非常大和非常小

指数和E记法

image.png

第4章 数据的类型

4.1 改变类型

类型转换

□ float() 从一个字符串或整数创建一个新的浮点数(小数)。

□ int() 从一个字符串或浮点数创建一个新的整数。

□ str() 从一个数(可以是任何其他类型)创建一个新的字符串。

float()、int()、str()后面有小括号,因为他们不是python关键字(如Print),它们只是python的内置函数(function).

image.png

image.png

int()函数总是下取整。它不会给你最接近的整数,而是会给出下一个最小的整数。实际上int()函数就是去掉小数部分。

4.2 得到更多信息:type()

image.png

4.3 类型转换错误

4.4 使用类型转换

第5章 输入

5.1 raw_input()内置函数

5.2 print命令和逗号

5.3 输入数字

第6章 GUI——图形用户界面

6.1 什么是GUI

6.2 第一个GUI

EasyGui是一个python模块,利用这个模块可以很容易地建立简单的GUI。模块就是一种拓展方法,通过它可以向python增加非内置的内容。

安装EasyGui→python路径→建立GUI

image.png

安装教程 https://blog.csdn.net/Aka_Happy/article/details/82120174

image.png

image.png

(牢骚话:折腾大半天,真是一脸懵逼,最后换成python setup.py install竟然意料之外的好了。)

image.png

image.png

EasyGui msgbox()函数用于创建一个消息框。大多数情况下,EasyGui函数的名就是相应英语单词的缩写。

6.3 GUI输入

image.png

‘ok’部分就是python和EasyGui在告诉你:用户点击了OK按钮。EasyGui会返回信息来告诉你用户在GUI中做了什么:点击了什么按钮,键入了哪些内容等。

EasyGui msgbox就是包含一条消息和一个ok按钮的对话框。不过还可以有不同类型的对话框,包含更多的按钮和其他内容。

6.4 选择你的口味

有多个按钮的对话框

按钮框(button box, buttonbox)

import easygui

flavor = easygui.buttonbox("What is your favorite ice cream flavor?",

choices = ['vanilla','chocolate','strawberry'])

easygui.msgbox("you picked " + flavor)

image.png

选择框

选择框(choice box, choicebox)

import easygui

flavor = easygui.choicebox("What is your favorite ice cream flavor?",

choices = ['vanilla','chocolate','strawberry'])

easygui.msgbox("you picked" + flavor)

image.png

文本输入

输入框(enter box, enterbox)

import easygui

flavor = easygui.enterbox("What is your favorite ice cream flavor?")

easygui.msgbox("you entered " + flavor)

image.png

默认输入

默认值(default)

import easygui

flavor = easygui.enterbox("What is your favorite ice cream flavor?",

default = 'vanilla')

easygui.msgbox("you entered " + flavor)

image.png

数字呢

如果想在EasyGui中输入一个数,完全可以先通过输入框得到一个字符串,然后使用int()或者float()由这个字符串创建一个数。

整数框(integer box, integerbox)可以用来输入整数,还可以对输入的数设置一个下界和上界。

整数框不允许输入浮点数(小数)。要输入小数 ,必须先通过输入框得到字符串,然后再使用float()转换这个字符串。

再看猜数游戏

import random,easygui

secret = random.randint(1,99)

guess = 0

tries = 0

easygui.msgbox("""AHOY! I'm the Dread Pirate Roberts, and I have a

secret! It is a number from 1 to 99. I'll give you 6 tries.""")

while guess != secret and tries < 6:

guess = easygui.integerbox("What's yer guess, matey?")

if not guess:break

if guess < secret:

easygui.msgbox(str(guess) + " is too low, ye scurvy dog!")

elif guess > secret:

easygui.msgbox(str(guess) + " is too high, landlubber!")

tries = tries + 1

if guess == secret:

easygui.msgbox("Avast!Ye got it! Found my secret, ye did!")

else:

easygui.msgbox("No more guess! The number was " + str(secret))

image.png

image.png

image.png

6.6 其他GUI组件

EasyGui还提供了另外一些GUI组件,包括允许多重选择的选择框等等

第7章 判断再循环

7.1 测试,测试

完成测试并根据结果做出判断称为分支(branching)。程序根据测试的结果来决定走哪条路,或者沿哪个分支执行。

python使用关键字if来测试条件

if timeAnswer == correctAnswer:

print("You got it right!")

score = score + 1

print("Thanks for playing.")

代码块block是一行或放在一起的多行代码。它们都与程序的某个部分相关(比如一个if语句)。在python中,通过将块中的代码行缩进来构成代码块。

if行末尾的冒号告诉python下面将是一个指令块。

7.2 缩进

在python中,编写代码时缩进是必不可少的一部分。缩进会告诉python代码块从哪里开始,到哪里结束。

python惯例:总是将代码块缩进4个空格。

7.3 是不是有问题

== 比较操作符

7.4 其他类型的测试

if 8 <= age <= 12:

比较操作符也称为关系操作符,比较也称为条件测试或逻辑测试。在编程中,逻辑就是指某个结论的答案是真还是假。

7.5 如果测试为假会怎么样

7.6 测试多个条件

7.7 使用and

image.png

7.8 使用or

7.9 使用not(进行反向测试)

if age >= 8:

if not (age<8):

image.png

第8章 转圈圈

□ 重复一定次数的循环,称为计数循环(counting loop);

□ 重复直至发生某种情况时结束的循环,称为条件循环(conditional loop),因为只要条件为真,这种循环会一直持续下去。

8.1 计数循环/for循环

for looper in [1,2,3,4,5]:

print("Hello")

每次循环称为一次迭代(iteraton).

for looper in [1,2,3,4,5]:

print(looper)

无限循环 Ctrl + C

8.2 使用计数循环

打印8的乘法表

for looper in [1,2,3,4,5]:

print(looper ,"times 8 = " ,looper*8)

image.png

8.3 一条捷径——range()

利用函数range(),只输入起始值和结束值,就会创建这二者之间的所有值。

把循环变量叫looper

8.4 风格问题——循环变量名

要使用能够描述变量用途的变量名。编程中有一个惯例,通常使用字母i、j、k等作为循环变量。

风格就是你的程序看上去怎么样,而与程序能不能正常工作无关。

8.5 按步长计数

for i in range(1,20,2):

print(i)

for i in range(10,1,-1):

print(i)

反向计数

import time

for i in range(10,0,-1):

print(i)

time.sleep(1)

print("BLAST OFF!")

image.png

8.6 没有数字的计算

for cool_guy in ['spongebob','spiderman','justin timberlake','my dad']:

print(cool_guy.title() + " is the coolest guy ever!")

8.7 关于这个问题

如果你能够提前知道希望循环运行多少次,那么for循环很合适。不过,有时你可能希望循环一直运行,知道发生某种情况时才结束,而且你不知道发生这种情况之前会有多少次迭代。这就可以用while循环来实现。

8.8 跳出循环——break和continue

用continue直接跳到循环的下一次迭代,或者用break完全终止循环。

第9章 全都是为了你——注释

9.1 增加注释

注释是给你看的,而不是让计算机执行的。注释是程序文档的一部分,计算机运行程序时会忽略这些注释。

文档就是关于一个程序的信息,描述了程序并说明它是如何工作的。注释是程序文档的一部分,不过在代码本身外,文档还包括其他部分,文档描述以下内容:

为什么写这个程序(它的用途)

这个程序是为谁写的

这个程序面向什么人(它的用户)

如何组织

更大、更复杂的程序往往有更多文档。

9.2 单行注释

(#)字符开头

9.3 行末注释

9.4 多行注释

三重引号字符串

9.5 注释风格

9.6 注释掉

可以使用注释临时跳过程序中的某些部分。作为注释的所有内容都会被忽略。

第10章 游戏时间到了

(暂略)

第11章 嵌套与可变循环

嵌套循环

父与子一起学python3_父与子的编程之旅:与小卡特一起学python相关推荐

  1. python面对对象建立自己的电子宠物的编码_父与子的编程之旅:与小卡特一起学Python(第3版)(全彩印刷)...

    Python青少年编程启蒙畅销书全新升级! 上一版豆瓣评分8.5分,被众多老师.家长推荐! 左耳朵耗子.爱编程的魏校长.周自恒倾力推荐! 1.第3版的示例使用Python 3 而不是Python 2, ...

  2. 父与子一起学python3,父与子的编程之旅 与小卡特一起学Python 第3版(全彩印刷)...

    章 出发吧 1 1.1 安装Python 1 1.2 从IDLE启动Python 2 1.3 来点指令吧 3 1.4 与Python交互 5 1.5 该编程了 7 1.6 运行你的个程序 9 1.7 ...

  3. 《父与子的编程之旅-与小卡特一起学python》第18章

    第18章:一种新的输入-事件 18.1事件 18.2键盘事件 18-01 # -*- coding:utf-8 -*- #__author__ = 'Janvn' # 2015/08/04 ''' 反 ...

  4. python参考书推荐--父与子的编程之旅

    之学ython用的是 笨办法学Python 这本书讲的很细,但练习分得太细,太繁琐,光是打印就分了好几个练习,其实这些小知识点在用的过程中慢慢就记住了,大费周折的有点没意思. 后来在国图又看见这本 零 ...

  5. 父与子的编程之旅:与小卡特一起学Python.pdf

    下载地址:网盘下载 编辑推荐 编程是一项充满乐趣的挑战,想要上手也非常容易!这本<父与子的编程之旅:与小卡特一起学Python>中,Warren和Carter父子以亲切的笔调.通俗的语言, ...

  6. 与小卡特一起学python 豆瓣_《父与子的编程之旅:与小卡特一起学Python》

    原标题:<父与子的编程之旅:与小卡特一起学Python> 内容简介 本书是一本家长与孩子共同学习编程的入门书.作者是一对父子,他们以Python语言为例,详尽细致地介绍了Python如何安 ...

  7. 父与子的编程python_父与子的编程之旅:与小卡特一起学Python

    领取成功 您已领取成功! 您可以进入Android/iOS/Kindle平台的多看阅读客户端,刷新个人中心的已购列表,即可下载图书,享受精品阅读时光啦! - | 回复不要太快哦~ 回复内容不能为空哦 ...

  8. 父与子python 百度云_《父与子的编程之旅:与小卡特一起学Python第2版》pdf电子书百度网盘下载地址...

    内容简介: 本书是一本家长与孩子共同学习编程的入门书.作者是一对父子,他们以Python语言为例,详尽细致地介绍了Python如何安装.字符串和操作符等程序设计的基本概念,介绍了条件语句.函数.模块等 ...

  9. 与小卡特一起学python 豆瓣_父与子的编程之旅:与小卡特一起学Python

    第1章 出发吧 1.1 安装Python 1.2 从IDLE启动Python 1.3 来点指令吧 1.4 与Python交互 1.5 该编程了 1.6 运行你的第一个程序 1.7 如果出问题 1.8 ...

  10. 学习参考《父与子的编程之旅python【第二版】》高清中文版PDF+高清英文版PDF+源代码...

    对于初步接触编程语言的朋友,推荐看一看<父与子的编程之旅第2版>,对于完全编程零基础的很友好! 图文并茂,过多的文字堆垒很容易让人产生厌倦情绪,也更容易让人产生放弃的想法.使用了大量插图, ...

最新文章

  1. python ImportError: No module named unittest2
  2. 13-Introduction to security
  3. sqlserver 中统计信息语句
  4. JavaSE——面向对象基础(思想、类与对象、构造方法、重载、匿名对象)
  5. 作者:贺田田(1985-),男,香港理工大学电子计算学系博士生
  6. 独家分享| 2019年校招大厂算法自己经历和好友经验(大疆,百度,腾讯……)
  7. 第十一天 安装Oracle数据库
  8. java 包依赖_java命令执行带jar包依赖的文件执行不了
  9. AI速查表:神经网络、机器学习、深度学习与数据科学一览
  10. icem网格划分如何给内部面网格,ICEM CFD处理混合网格划分中低质量的问题
  11. matlab2017调用vgg19,从VGG19的任意中间层中抽取特征
  12. 你想要的宏基因组-微生物组知识全在这(1905)
  13. 使用VMware虚拟机搭建爱快路由器PPPoE服务器环境
  14. RLS算法-公式初探
  15. 手机怎么实现图片转文字操作?学会这三招就够了
  16. 操作系统与Linux
  17. 2021年湖南卫生副高考试成绩查询,2021年湖南卫生资格成绩查询时间及查分入口【6月4日起】...
  18. 使用Java实现上传图片到七牛云
  19. 怎么用计算机求优秀比,计算机考试字处理求所占比值用什么公式
  20. for...in 列表时,删除列表元素中的陷阱和解释

热门文章

  1. 超好用的数学公式编辑器MathType7.4下载安装及wps配置
  2. Python语言基本语法元素
  3. windows7专业版64位 vmware虚拟机镜像,vmware打开直接能用
  4. 基于RV1126平台imx291分析 --- 运行设备(VIDIOC_STREAMON)
  5. USB转TTL|mcuisp使用
  6. python中类的实例化_python类的实例化
  7. linux 程序发包,软件测试常用linux发包命令
  8. CCNA学习指南 第七章 下载
  9. 计算机定时开机命令,定时开关机
  10. i8一点通如何加载虚拟光驱玩游戏