前言

目前为止绝大部分编程都是在电脑端完成的,所以在学习一门编程语言之前需要了解一下计算机的组成。

计算机组成

计算机由两大系统组成,分别是硬件系统和软件系统。

硬件系统

简单来说,从1946年世界上第一台电子计算机诞生以及冯诺依曼体系结构的提出,至今70多年间,大部分甚至绝大部分电子计算机都在沿用这个体系。


来自百度百科

如上图所示,根据冯诺依曼提出的计算机体系结构,计算机由控制器、运算器、存储器、输入设备、输出设备五部分组成。运算器和控制器被放在一起,称为中央处理器,既CPU。根据冯·诺依曼提出的原理制造的计算机被称为冯·诺依曼结构计算机,简称冯诺依曼机。现代计算机虽然结构更加复杂,计算能力更加强大,但仍然是基于这一原理设计的,也是冯诺依曼机。

冯诺依曼机的五大部分组成了计算机的硬件系统。

软件系统

软件家族可谓是百花齐放,典型代表就是操作系统,和其他可以帮助我们处理各种问题的软件(word、photoshop等)等共同构成软件系统。

以上简述了计算机的组成。

认识Python

Python发展简述

Python的作者,Guido von Rossum(吉多·范·罗苏姆,中国程序员都叫他龟叔),荷兰人。

龟叔希望有一门语言,能够像C语言那样,能够全面的调用计算机的功能接口,又可以像shell那样,可以轻松的编程。

1989年,为了打发圣诞节假期,龟叔开始写Python需要的编译器。Python一词来源于龟叔所挚爱的电视剧Monty Python's Flying Circus。他希望这门叫做Python的语言,能符合他的理想:介于C和shell之间,功能全面,易学易用,可拓展的语言。

1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。从诞生起,Python已经具有了:类、函数、异常处理、包含列表和字典在内的核心数据类型,以及模块为基础的拓展系统。

Python崇尚优美、清晰、简单,是一个优秀并广泛使用的语言。

Python的优缺点

优点

简单:Python是一种代表简单主义思想的语言。

易学:就如同你即将看到的一样,Python极其容易上手。

免费、开源:Python是FLOSS(自由/开放源码软件)之一。

高层语言:当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节。

可移植性:由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。

解释型语言:一个用编译型语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。

面向对象:Python既支持面向过程的编程也支持面向对象的编程。

可扩展性:如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。

丰富的库:Python标准库确实很庞大。

规范的代码:Python采用强制缩进的方式使得代码具有极佳的可读性。

缺点

Python语言非常完善,没有明显的短板和缺点,唯一的缺点就是执行效率慢,这个是解释型语言所通有的,同时这个缺点也将被计算机越来越强大的性能所弥补。

Python应用场景

Web应用开发

比如,通过mod_wsgi模块,Apache可以运行用Python编写的Web程序。

操作系统管理、服务器运维的自动化脚本

在很多操作系统里,Python是标准的系统组件。 大多数Linux发行版以及NetBSD、OpenBSD和Mac OS X都集成了Python,可以在终端下直接运行Python。

网络爬虫

Python有大量的HTTP请求处理库和HTML解析库,并且有成熟高效的爬虫框架Scrapy和分布式解决方案scrapy-redis,在爬虫的应用方面非常广泛。

科学计算

NumPy、SciPy、Pandas、Matplotlib可以让Python程序员编写科学计算程序。

桌面软件

PyQt、PySide、wxPython、PyGTK是Python快速开发桌面应用程序的利器。

服务器软件(网络软件)

Python对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络爬虫。

游戏

很多游戏使用C++编写图形显示等高性能模块,而使用Python或者Lua编写游戏的逻辑、服务器。

构思实现,产品早期原型和迭代

Google、NASA、Facebook都在内部大量地使用Python。

Python 注释

python注释分为两种,一种的单行注释,一种是多行注释。

单行注释

在注释前加一个 “#” 。

# 这是一个单行注释

多行注释

使用 三对

"""

这是一个多行注释

我是可以有多行的

你看...

"""

Python 变量以及类型

变量

变量可以理解为是一个包裹,里面存放着你想要的数据。如果有多个数据,可以使用多个变量。

类型

在Python中变量是没有类型的,既然变量没有类型,那这里要说的就是数据的类型。

Python3中的基本数据类型分为七类九种


基本数据类型

如图所示,Python3拥有Number、Boolean、String、List、Tuple、Dictionary、Set七大类数据类型,其中Number又分为int、float、complex,和其它数据类型组成了Python3 的九种数据类型。

注:Python3 没有Python2 的long类型

标识符和关键字

标识符

什么是标识符?开发人员在程序中自定义的一些符号和名称,如变量名 、函数名等。

标识符的规则(语法层面) 必须遵守

标识符由字母、下划线和数字组成,且数字不能开头

注意:Python区分大小写, 既name / Name 是两个变量, Name / NAME 是两个变量.

name = 1

Name = 2

NAME = 3

print(name)

print(Name)

print(NAME)

# 运行结果

# 1

# 2

# 3

命名规则(约定俗成的准则) 最好遵守,便于维护

见名知意 使用英文名词作为变量名。

name = "小芳" # name翻译为名字、姓名。不存在歧义

xingming =" 小芳" # 姓名 性命 兴明 刑名 以上都可以是xingming,表达意思不明确

小驼峰式命名法(lower camel case): 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog

大驼峰式命名法(upper camel case): 每一个单字的首字母都采用大写字母,例如:FirstName、LastName

还有一种命名法是用下划线“_”来连接所有的单词,比如send_buf。(官方推荐)

Python的命令规则遵循PEP8标准

关键字

什么是关键字

一些具有特殊功能的标识符,就是所谓的关键字。关键字,是python已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符(语法层面)。

安装并正确配置Python (飞机 @陌上行走),则可用通过Python Console查看关键字,命令如下:

import keyword

keyword.kwlist

# 结果

# ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class',

# 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for',

# 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal',

# 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

Python中的输入输出

输出

print('hello world')

# 运行结果

# hello world

格式化输出

age = 10

print("我今年%d岁" % age)

# 运行结果

# 我今年10岁

带有%这样的格式符号(占位符)的输出(print 语句),这就是Python中的格式化输出。

格式符号(占位符)

格式符号

转换

%s

字符串

%d

有符号十进制整数

%f

浮点数

%c

字符

%u

无符号十进制整数

%o

八进制整数

%x

十六进制整数(小写字母0x)

%X

十六进制整数(大写字母0X)

%e

科学计数法(小写'e')

%E

科学计数法(大写“E”)

%g

%f和%e 的简写

%G

%f和%E的简写

换行输出

在输出的时候,如果有\n那么,此时\n后的内容会在另外一行显示

print("我是第一行输出,我是第二行输出")

print("我是第一行输出,\n我是第二行输出")


换行输出

输入


输入

到此结 DragonFangQy 2018.4.2