一:编程语言分类
-
机器语言
-
汇编语言
-
高级语言
高级语言又分为编译型和解释型语言。而python就属于解释型语言。
这些语言从上到下的特点:执行效率变低,开发效率变高,学习难度变低。
二:python简介
Python是一种解释型、面向对象、动态数据类型的高级程序设计语言。
Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。
三:python环境搭建
打开WEB浏览器访问http://www.python.org/download/,根据自己的环境选择需要的安装包,windows系统就和安装别的软件一样,linux的源码包需要编译。
安装完成后需要设置环境变量
-
windows环境 右击计算机-->属性-->高级系统设置-->环境变量-->系统变量path
-
Linux环境
1
2
|
# vim /etc/profile
export PATH= "$PATH:/usr/local/bin/python"
|
#windows多版本共存注意:在安装目录下找到python.exe,拷贝一份,命名为python2.exe或python3.exe,一定要保留原版,因为pip工具会调用它
#测试安装是否成功windows --> 运行 --> 输入cmd ,然后回车,弹出cmd程序,输入python,如果能进入交互环境 ,代表安装成功。
脚本执行过程:
1):启动python.exe程序
2):把脚本文件从硬盘读取到内存中
3):执行脚本文件
四:变量
1.变量命名规范
a. 变量名只能是 字母、数字或下划线的任意组合
b. 变量名的第一个字符不能是数字
c. 关键字不能声明为变量名['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']
2.变量三要素
变量的值
变量的值的类型
变量的值的id号
1
2
|
>>>name = (name,(name),(name))
wang < class 'str' > 2612591309296
|
五:开发规范
文件头:
1
2
|
#!/usr/bin/env python # -*- coding: utf-8 -*- |
注释:
代码注释分单行和多行注释, 单行注释用#,多行注释可以用三对双引号""" """
六:数据类型
-
数字
#int整型定义:age=10 #age=int(10)
用于标识:年龄,等级,×××号,qq号,个数
#float浮点型定义:salary=3.1 #salary=float(3.1)
用于标识:工资,身高,体重
-
字符串
#在python中,加了引号的字符就是字符串类型,python并没有字符类型。定义:name='wang'
用于标识:描述性的内容,如姓名,性别,国籍,种族
(字符串之间只能进行相加或相乘的运算)
-
列表
#在[]内用逗号分隔,可以存放n个任意类型的值定义:students=['li','wang','wu',]
用于标识:存储多个值的情况,比如一个人有多个爱好
4.字典
相对于列表,字典能给所存的值打标签,方便取出。
在{}内用逗号分隔,可以存放多个key:value的值,value可以是任意类型定义:info={'name':'wang','age':18,'sex':male}
用于标识:存储多个值的情况,每个值都有唯一一个对应的key,可以更为方便高效地取值
5.布尔型
一个True一个False
1
2
3
4
|
>>> a = 3
>>> b = 5
>>> a > b #不成立就是Falsee
>>> a < b #成立就是True
|
#1.可变类型:在id不变的情况下,value可以变,则称为可变类型,如列表,字典
#2. 不可变类型:value一旦改变,id也改变,则称为不可变类型(id变,意味着创建了新的内存空间)
七:格式化输出
%s字符串占位符:可以接收字符串,也可接收数字 print('My name is %s,my age is %s' %('wang',18))
%d数字占位符:只能接收数字 print('My name is %s,my age is %d' %('wang',18))
1
2
3
|
>>>name = input ( 'your name: ' )
>>>age = input ( 'your age: ' )
>>> print ( 'My name is %s,my age is %d' % (name,age))
|
八:流程控制if循环
1.if...else
2.if...elif...else
如果:成绩>=90,那么:优秀
成绩>=80且<90,那么:良好
成绩>=70且<80,那么:普通
其他情况:很差
1
2
3
4
5
6
7
8
9
10
11
12
|
#!/usr/bin/env python # -*- coding: utf-8 -*- score = input ( '>>: ' )
score = int (score)
if score > = 90 :
print ( '优秀' )
elif score > = 80 :
print ( '良好' )
elif score > = 70 :
print ( '普通' )
else :
print ( '很差' )
|
3.if嵌套if
和if语句用法一样,不过要注意缩进,不然会报错
九:流程控制while循环
对于用户多次输入的程序if需要多段代码,这时候while循环能很好的解决
while 条件:
# 循环体
# 如果条件为真,那么循环体则执行,执行完毕后再次循环,重新判断条件。。。
# 如果条件为假,那么循环体不执行,循环终止
#打印0-10
1
2
3
4
5
6
|
#!/usr/bin/env python # -*- coding: utf-8 -*- count = 0
while count < = 10 :
print ( 'loop' ,count)
count + = 1
|
4.循环嵌套与tag
1
2
3
4
|
tag = True while tag:
...... while tag:
|
5. break与continue
#break用于退出本层循环
1
2
3
4
|
while True :
print "123"
break
print "456"
|
#continue用于退出本次循环,继续下一次循环
1
2
3
4
|
while True :
print "123"
continue
print "456"
|
6.while+else
#练习,实现如下:
1 循环验证用户输入的用户名与密码 2 认证通过后,运行用户重复执行命令 3 当用户输入命令为quit时,则退出整个程序
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
name = 'wang'
password = '123'
while True :
inp_name = input ( 'username: ' )
inp_pwd = input ( 'password: ' )
if inp_name = = name and inp_pwd = = password:
while True :
cmd = input ( '>>: ' )
if not cmd: continue #用户不输入执行continue,退出本次循环,继续下一次循环
if cmd = = 'quit' :
break
print ( 'run <%s>' % cmd)
else :
print ( 'username or password is wrong' )
continue
break
|
上面的方法换成tag的话,效果一样
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
name = 'wang'
password = '123'
tag = True
while tag:
inp_name = input ( 'username: ' )
inp_pwd = input ( 'password: ' )
if inp_name = = name and inp_pwd = = password:
while tag:
cmd = input ( '>>: ' )
if not cmd: continue if cmd = = 'quit' :
tag = False #tag的值变为False,执行continue的话,跳出本次循环,执行while tag,程序不能继续执行
continue print ( 'run <%s>' % cmd)
else :
print ( 'username or password is wrong' )
continue
|
本文转自 宋鹏超 51CTO博客,原文链接:http://blog.51cto.com/qidian510/2047311,如需转载请自行联系原作者