一、Python介绍
1.1 Python的前世今生
创始人Guido·van·Rossum,1989年为了打发无聊的圣诞节而编写的一个编程语言。
1.2 TIOBE Index for May 2016
1.3 目前Python主要应用领域
- 云计算: 云计算最火的语言, 典型应用OpenStack
- WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣等, 典型WEB框架有Django。
- 科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas。
- 系统运维: 运维人员必备语言。
- 金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。
- 图形GUI: PyQT, WxPython,TkInter。
1.4 Python在一些公司的应用
- 谷歌Google App Engine 、code.google.com 、Google earth 、谷歌爬虫、Google广告等项目都在大量使用Python开发。
- CIA: 美国中情局网站就是用Python开发的。
- NASA: 美国航天局(NASA)大量使用Python进行数据分析和运算。
- YouTube:世界上最大的视频网站YouTube就是用Python开发的。
- Dropbox:美国最大的在线云存储网站,全部用Python实现,每天网站处理10亿个文件的上传和下载。
- Instagram:美国最大的图片分享社交网站,每天超过3千万张照片被分享,全部用python开发。
- Facebook:大量的基础库均通过Python实现的。
- Redhat: 世界上最流行的Linux发行版本中的yum包管理工具就是用python开发的。
- 豆瓣: 公司几乎所有的业务均是通过Python开发的。
- 知乎: 国内最大的问答社区,通过Python开发(国外Quora)。
- 春雨医生:国内知名的在线医疗网站是用Python开发的。
- 除上面之外,还有搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝 、土豆、新浪、果壳等公司都在使用Python完成各种各样的任务。
1.5 为什么是Python!
Python与C
C语言:代码编译得到机器码,机器码在处理器上直接执行。
Python:为解析后生成字节码,然后再解析为机器码,所以比C语言慢。Python是C开发的。
Python和其他语言比较
使用:Linux原装Python。
速度:Python在速度上可能稍显逊色。
1.6 Python的种类
Cpython:Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上。
Jyhton:Python的Java实现,Jython会将Python代码动态编译成Java字节码,然后在JVM上运行。
IronPython:Python的C#实现,IronPython将Python代码编译成C#字节码,然后在CLR上运行。(与Jython类似)
PyPy(特殊):Python实现的Python,将Python的字节码字节码再编译成机器码。
其他:RubyPython、Brython ...
1.7 Python 2与3
简化语法
1 Old: print "The answer is", 2*2 New: print("The answer is", 2*2) 2 Old: print x, # Trailing comma suppresses newline New: print(x, end=" ") # Appends a space instead of a newline 3 Old: print # Prints a newline 4 New: print() # You must call the function! 5 Old: print >>sys.stderr, "fatal error" New: print("fatal error", file=sys.stderr) 6 Old: print (x, y) # prints repr((x, y)) 7 New: print((x, y)) # Not the same as print(x, y)!
1.8 解释器
1 #!/usr/bin/env python #指定哪个程序来运行,需要有执行权限
2 #-*-coding:utf-8-*- #万国码,UTF08 3 print("Hello World!")
二、 Python环境搭建
2.1 Windows
2.1.1 Python 3.5.1
安装过程:省略。
2.1.2 Pycharm
PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。
2.2 Linux
2.2.1 CentOS 6.7
默认Python版本2.6.6
安装Python 3.5.1
1 yum groupinstall ‘Development Tools‘ 2 yum install zlib-devel bzip2-devel openssl-devel ncurses-devel 3 4 wget https://www.python.org/ftp/python/3.5.1/Python-3.5.1.tgz 5 tar -xf Python-3.5.1.tgz 6 cd Python-3.5.1 7 ./configure --prefix=/usr/local/python3.5.1 8 make && make install 9 ln -s /usr/local/python3.5.1/bin/python3 /usr/bin/python3 [[email protected] ~]# python3 Python 3.5.1 (default, May 10 2016, 15:36:08) [GCC 4.4.7 20120313 (Red Hat 4.4.7-16)] on linux Type "help", "copyright", "credits" or "license" for more information. >>>
三、 Python入门
3.1 Hello World
hello.py1 #!/usr/bin/env python 2 #-*-coding:utf-8-*- 3 4 print("Hello World!")
输出结果
[[email protected] ~]# python3 hello.py Hello World!
3.2 变量\字符编码
所有引号内的内容都被认为字符串
变量定义的规则:
- 变量名只能是 字母、数字或下划线的任意组合
- 变量名的第一个字符不能是数字
- 以下关键字不能声明为变量名
[‘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‘]
1 >>> name = "Dalong" 2 >>> name2 = name 3 >>> print(name,name2) 4 Dalong Dalong 5 >>> name = "Jack" 6 >>> print(name,name2) 7 Jack Dalong 8 >>>
模块
练习1:输入用户密码,并打印结果 getpass模块
1 #!/usr/bin/env python 2 #_*_coding:utf-8_*_ 3 4 import getpass 5 username = input("username:") 6 password = getpass.getpass("password:") 7 print(username,password)
执行结果
[[email protected] ~]# python3 pass.py username:dalong password: dalong 123456
练习2:if 判断用户名密码是否正确
#!/usr/bin/env python #_*_coding:utf-8_*_ user = ‘Dalong‘ passwd = ‘Dalong123‘ username = input("username:") password = input("password:") if user == username and passwd == password: print("Welcome login") else: print("invalid username or password")
执行结果
[[email protected] ~]# python if_v2.py username:dalong password:123 invalid username or password [[email protected] ~]# python if_v2.py username:long password:dalong123 invalid username or password [[email protected] ~]# python if_v2.py username:dalong password:dalong123 Welcome login
练习3:猜数字
猜错3次提示是否继续
#!/usr/bin/env python #_*_coding:utf-8_*_ age = 22 counter = 0 for i in range(10): if counter <3: guess_num = int(input("Input your guess num:")) if guess_num == age : print("Congratulations!You got it.") break #不继续运行,跳出整个循环 elif guess_num >age: print("Think Smaller!") else: print("Think Big!") else: continue_confirm = input("Do you want Y:") if continue_confirm == ‘y‘: counter = 0 continue else: print("bye") break counter += 1 #counter = counter + 1
执行结果
Input your guess num:11 Think Big! Input your guess num:33 Think Smaller! Input your guess num:55 Think Smaller! Do you want Y:y Input your guess num:11 Think Big! Input your guess num:33 Think Smaller! Input your guess num:22 Congratulations!You got it.
时间: 2024-10-06 00:22:25