一、 Python介绍
python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。
最新的TIOBE排行榜,Python赶超PHP占据第五, Python崇尚优美、清晰、简单,是一个优秀并广泛使用的语言。
Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。互联网公司广泛使用Python来做的事一般有:自动化运维、自动化测试、大数据分析、爬虫、Web 等。
Python 是一门什么样的语言?
可从编译型和解释型、动态语言和静态语言、强类型定义语言和弱类型定义语言三个大类来进行分析,如下:
1、编译型:就是一次把所有的代码转换成机器语言,然后写成可执行文件;简单说阅读一本英文书,翻译完之后给你阅读;
解释型:就是不断解释、执行、解释、执行……简言之,边翻译英文边阅读。
2、动态语言:是指在运行期间才去做数据类型检查的语言,简言之,编程时不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。
静态语言:它的数据类型是在编译期间检查的,也就是说在写程序时要声明所有变量的数据类型。
3、强类型定义语言:即一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。
弱类型定义语言:数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值,速度相对强类型快一些。
从以上可得:python是一门动态解释型的强类型定义语言。
Python的优缺点
优点:优雅、明确、简单,程序看起来简单易懂;
开发效率高,有强大的第三方库;
高级语言,可移植,可扩展,可嵌入。
缺点:速度相对慢一些;代码不可加密;线程无法利用多CPU。
Python解释器
CPython:官方版本,C语言开发,使用最广泛。
IPython:基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强。
PyPy:执行速度快。
其他:Jython、IronPython、RubyPython ...
二、Python入门
1、第一个程序:Hello World!
print("Hello World!")
输出:Hello World!
2、变量
name = “Alpari”
上述代码声明了一个变量,变量名为: name,变量name的值为:“Alpari”
变量定义的规则:
- 变量名只能是 字母、数字或下划线的任意组合
- 变量名的第一个字符不能是数字
- 以下关键字不能声明为变量名
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
3、字符编码
python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill)
ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言, 其最多只能用 8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号。
关于中文编码:GB2312(1980年,收录7445个字符)—>GBK1.0(1995年,收录了21886个符号)—>GB18030(2000年,27484个汉字)--向下兼容。
为统一编码产生:Unicode—>UTF-8。
ascii码无法表示中文,若想表示则加:# -*- coding: utf-8 -*-
4、注释
当行注视:# 被注释内容
多行注释:""" 被注释内容 """
5、用户输入
name = input("What is your name?")
print("Hello" ,name)
6、if else判断
name = input("name:")
pwd = input("pwd:")
if name == "Alpari" and pwd == "123":
print("ok")
else:
print("no")
7、while循环
my_age = 24
count = 0
while count < 3:
age = int(input("age:")) #py3输入为字符串
if age == my_age:
print("yes")
break
elif age < my_age:
print("think bigger..")
else:
print("think smaller..")
count += 1
if count == 3:
continue_confirm = input("try again?")
if continue_confirm != "n": #!=是不等于
count = 0
8、for 循环
for i in range(10):
if i < 5:
continue #不往下走了,直接进入下一次loop
print("loop:",i)
for i in range(10):
if i > 5:
break #不往下走了,直接进入跳出整个loop
print("loop:",i)