一、python 的发展历史
1、起源
python 创始人:Guido von Rossum (吉多) 荷兰人
第一个python解释器的诞生日期:1991年,是用 c 语言实现的
诞生背景:Guido希望有一种语言,这种语言能够像C语言那样,能够全面调用计算机的功能接口,又可以像shell那样,可以轻松的编程。1989年,为了打发圣诞节假期,Guido开始写Python语言的编译器。Python这个名字,来自Guido所挚爱的电视剧Monty Python's Flying Circus。他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。
life is short you need python 人生苦短,我用python
2、python 的优缺点
优点:
- 简单、易学
- 免费、开源
- 面向对象
- 丰富的库
- 可扩展性
缺点:
- 运行速度
- 国内市场较小
- 中文资料匮乏
3、python的特点
- Python 是完全面向对象的语言
- 函数、模块、数字、字符串都是对象,在 Python 中一切皆对象
- 完全支持继承、重载、多重继承
- 支持重载运算符,也支持泛型设计
- Python 拥有一个强大的标准库,Python 语言的核心只包含 数字、字符串、列表、字典、文件 等常见类型和函数,而由 Python 标准库提供了 系统管理、网络通信、文本处理、数据库接口、图形系统、XML 处理
- Python 社区提供了大量的第三方模块,使用方式与标准库类似。它们的功能覆盖 科学计算、人工智能、机器学习、Web 开发、数据库接口、图形系统
python的logo
4、python的应用
- Web应用开发
- 操作系统管理、服务器运维的自动化脚本
- 科学计算
- 桌面软件
- 服务器软件(网络软件)
- 游戏
- 构思实现,产品早期原型和迭代
二、第一个python程序
Microsoft Windows [版本 10.0.17134.112]
(c) 2018 Microsoft Corporation。保留所有权利。
C:\Users\14183>python
Python 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> print("Hello world Hello python")
Hello world Hello python
>>>
三、注释
1、单行注释
以#开头,#右边的所有东西当做说明,而不是真正要执行的程序,起辅助说明作用
print("hello world hello python") # 我是注释用来写一些功能说明之类的话
2、多行注释
三个单引号或者是三个双引号开始,三个单引号结尾或者三个双引号结尾构成一个多行注释
"""我是一个多行注释,我可以换行,可以写好多好多的内容,一般我会出现在函数、类的下方做个功能说明"""
def goose():
"""打印古诗鹅鹅鹅"""
print("鹅 鹅 鹅 ")
print("曲项向天歌")
print("白毛浮绿水")
print("红掌拨清波")
注意:在 python 2 中如果有汉字注释 需要加上 # coding = utf - 8
三、变量和类型
1、变量类型
程序是用来处理数据的,而变量是用来储存数据的
2、怎样查看一个变量的类型
使用 type(变量)查看一个变量的类型
In [6]: a = 1
In [7]: type(a)
Out[7]: int
In [8]: b = []
In [9]: type(b)
Out[9]: list
In [10]: c = True
In [11]: type(c)
Out[11]: bool
In [12]: d = ""
In [13]: type(d)
Out[13]: str
四、标识符与关键字
1、标识符
标识符是开发者自己定义的,其中:函数名、变量名、类名、方法名都属于标识符
2、标识符的命名规则
标识符是由数字、字母、下划线组成,且数字不能开头 不能使用关键词。
3、标识符的命名法
大驼峰:每个单词的首字母都大写 例:StudentName
小驼峰:首个单词小写后面的单词首字母大写 例:helloWorld
下划线:单词之间使用下滑线连接 例: new_num (官方推荐)
4、关键词
python中的一些特殊的标识符,用作特殊含义
查看关键词:导入 keyword 模块 使用 keyword.kwlist 查看
In [18]: import keyword
In [19]: keyword.kwlist
Out[19]:
['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']
五、输入、输出
1、输入使用 input() 函数, 输出使用 print() 函数。
python 2 和 python 3 的不同之处
python 2 的输入:输入时必须是表达式,如果输入 123 则类型为 int 类型 如果输入 abc 则会报错 想要获得字符串 abc 则输入 "abc”
python 3 的输入:直接输入默认为字符串 即 输入123 类型为"123" 字符串
python 2 的输出:不使用括号
python 3 的输出 :必须使用括号
2、格式化的输出
格式符号 | 转换 |
%c | 字符 |
%s | 通过str() 字符串转换来格式化 |
%i | 有符号十进制整数 |
%d | 有符号十进制整数 |
%u | 无符号十进制整数 |
%o | 八进制整数 |
%x | 十六进制整数(小写字母) |
%X | 十六进制整数(大写字母) |
%e | 索引符号(小写'e') |
%E | 索引符号(大写“E”) |
%f | 浮点实数 |
%g | %f和%e 的简写 |
%G | %f和%E的简写 |
六、运算符
1、算术运算符
运算符 | 描述 | 实例 |
+ | 加 | 两个对象相加 a + b 输出结果 30 |
- | 减 | 得到负数或是一个数减去另一个数 a - b 输出结果 -10 |
* | 乘 | 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200 |
/ | 除 | x除以y b / a 输出结果 2 |
// | 取整除 | 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 |
% | 取余 | 返回除法的余数 b % a 输出结果 0 |
** | 幂 | 返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000 |
2、赋值运算符
运算符 | 描述 | 实例 |
= | 赋值运算符 | 把=号右边的结果给左边的变量 num=1+2*3 结果num的值为7 |
3、复合赋值运算符
运算符 | 描述 | 实例 |
+= | 加法赋值运算符 | c += a 等效于 c = c + a |
-= | 减法赋值运算符 | c -= a 等效于 c = c - a |
*= | 乘法赋值运算符 | c *= a 等效于 c = c * a |
/= | 除法赋值运算符 | c /= a 等效于 c = c / a |
%= | 取模赋值运算符 | c %= a 等效于 c = c % a |
**= | 幂赋值运算符 | c **= a 等效于 c = c ** a |
//= | 取整除赋值运算符 | c //= a 等效于 c = c // a |