一、编程语言简介
编程语言分类
1.机器语言:机器语言是用二进制代码表示的计算机能直接识别和执行的机器指令
优点:灵活、直接执行、速度快
缺点:移植性差,不同的计算机的机器语言是不相通的
2.汇编语言:和机器语言类似,都是直接对硬件进行操作,不同的是指令采用了英文缩写,比机器语言更容易识别和记忆
优点:执行速度快,能完成一般高级语言不能实现的操作
缺点:源程序复杂,容易出错,难度大,需要很多计算机专业知识
3.高级语言:用人能读懂的命令来编写程序
优点:大大降低了编程难度,使程序员把更多的精力放在编程而不是语法上
缺点:高级语言不能直接被计算机识别,必须经过转化才能执行,所以速度比机器语言和汇编语言慢
高级语言按转化的方式可以分为解释型和编译型
编译型:指程序执行之前,就将程序源代码“翻译”成机器指令,并保存成二进制文件,优点是编译后的代码可以直接在机器上运行,速度高而且还能在一定程度上防止他人看到源码,缺点是不容易调试,程序修改一个小地方,也要先修改源码,再重新编译
解释型:由相应语言的解释器把源代码翻译成相应的目标代码,这种方式非常灵活,调试非常方便,但是不能生成独立的可执行文件,且应用程序不能脱离解释器
二、Python简介
1989年,为了打发圣诞节假期,Guido开始写Python语言的编译器。Python这个名字,来自Guido所挚爱的电视剧Monty Python’s Flying Circus。他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。
根据最新的TIOBE排行榜,Python已经超过c#成为第四名
Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。
Python虽然也是先编译成字节码然后再交给Python解释器去执行,但Python不能像Java一样是混合型,因为只有在import导入py文件时,才会产生pyc字节码文件。其他情况执行py文件,产生的字节码文件不会保留下来。
总是有人在质疑Python的运行速度,但是对于大多数应用程序来说,运行速度并没有那么重要,相比而言,开发效率更被看重。
三、Python安装
http://www.cnblogs.com/zhang-can/p/6953332.html
四、第一个Python程序
安装好Python后,我们来写第一个Python程序,输出“hello world”
1.在命令提示行中直接输入交互命令
C:\Users\zhangcan>python Python 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 18:41:36) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> print (‘hello world‘) hello world
2.用文本编辑器写好命令,在拿到命令提示行中执行
C:\Users\zhangcan>python C:\Users\zhangcan\Desktop\1.txt hello world
五、变量
1. 变量用来记录程序运行中变化的值
2. 变量的声明和引用
#!/usr/bin/env python name=‘zhangcan‘ #变量的声明 print(name ) #通过变量名引用变量,并打印
3. 变量名的命名规范:
1)变量名只能是字母、数字或下划线的组合
2)变量名不能以数字开头,并且尽量避免以下划线开头,因为下划线开头的文件有特殊含义
3)变量名不能用关键字,Python中的关键字有: and,as,assert,break,class,continue,def,del,elif,else,except,exec,finally,for,from,global,if,import,in,lambda,not,or,pass,print,raise,return,try,while,with,yield
六、输入输出
python3中只有一种输入就是 input,和python2中的raw_input作用一样,就是把用户的输入当做字符串,python2中也有input的命令,是用户输入什么类型,就保存成什么类型
用type()可查看数据类型
C:\Users\zhangcan>python Python 3.6.1 (v3.6.1:69c0db5, Mar 21 2017, 18:41:36) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> user=input() zhangcan >>> print(user,type(user)) zhangcan <class ‘str‘>
C:\Users\zhangcan>python2 Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:53:40) [MSC v.1500 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> num=raw_input() 123 >>> print(num,type(num)) (‘123‘, <type ‘str‘>) >>> num=input() 123 >>> print(num,type(num)) (123, <type ‘int‘>) >>>
还有一种需求就是当用户输入用户名和密码的时候,设置密码不可见,需要利用getpass模块中的getpass方法,代码如下
#!/bin/bash/env python import getpass password=getpass.getpass(‘请输入密码:‘) print(password)
注意这个模块不能再pycharm中执行,需要到命令提示行中执行
七、简单的运算符
算数运算符:+,-,*,/,%,**,//
注意:Python中的除法是浮点运算,//可以实现整除
**是幂运算,如7**2的运算结果是49
赋值运算符:=,+=,-=,*=,/=,%=,**=,//=
比较运算符:==,!=,<>,<,>,<=,>=
位运算符:$,|,^,~,<<,>>
逻辑运算符:and,or,not
八、流程控制
1.if分支结构
示例:猜老大爷年纪
age = 88 gus = input(‘请输入老大爷年纪:‘) if gus > ‘age‘: print(‘大了‘) elif gus < ‘age‘: print(‘小了‘) else: print(‘厉害‘)
2.while循环
continue退出本层循环,break退出本次循环
示例:实现用户登录(有三次尝试机会)
username = ‘zhangcan‘ password = ‘123‘ tag = 0 while tag<3: intp = input(‘请输入用户名:‘) pas = input(‘请输入密码:‘) tag = tag + 1 if intp==username and pas==password: print(‘login successful‘) break else: print(‘name or password wrong‘) continue
3.for循环
示例:输出九九乘法表
for i in range(1,10): for j in range(1,i+1): print(‘%s*%s=%s‘ %(i,j,i*j),end=‘ ‘) print( )
原文:http://www.cnblogs.com/zhang-can/p/6953291.html