python之路--day2
1.编程语言的分类
机器语言:二进制指令编程,直接操作硬件,运行效率高,开发效率低
汇编语言:用英文标签代替二进制指令,也是直接操作硬件,运行效率高,开发效率低
高级语言:用人类的字符编写程序,计算机无法理解,必须翻译为计算机能够理解的语言,才能执行,分为两种---编译型,解释型
编译型:如c语言,编译一次,拿到的结果可以重复运行
运行过程:翻译:程序代码----gcc----机器语言
运行:机器语言---cpu执行
执行效率高,开发效率低,跨平台性差,调试复杂
解释型:如python,解释一条,执行一条
运行过程:程序代码--解释器---字节码(一次性翻译为字节码)---机器语言---cpu执行
开发效率高,跨平台性好,调试方便,但是执行效率低
1.1 python程序的执行流程(参考应用程序的启动流程)
启动python解释器
将代码读入内存
解释执行
2.变量
2.1什么是变量,为什么要有变量
变量是一种可以反映出状态变化的机制,而程序的执行本质就是一系列状态的变化
2.2变量的定义
语法:变量名 = 值 (变量名之对值得引用)
内存会开辟空间用来存放变量值,再把变量名和变量值做一个对应关系----变量名相当于一个标签
2.3变量的命名规范
2.3.1变量名只能是字母,数字或者下划线的任意组合
2.3.2变量名的第一个字符不能是数字
2.3.3关键字不能声明为变量名
2.4变量的三个特征
id():返回变量在内存中的地址
type():返回变量的类型
value():返回变量的值
********** == 比较符号等于号:比较的是变量的值是否相等
is 身份运算符号:比较的是变量的id是否一样
2.5常量
常量与变量相对应,python中没有常量的概念,将变量名全部大写就是约定俗成的常量表示
3.代码注释:单行注释# 多行注释使用三对双引号
注释可以用中文和英文,但是不要使用拼音
4.文件头:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
5.基本数据类型
5.1数字类型:int整形
5.2float浮点型
5.3字符串:在引号之内一串字符
单双引号没有区别,只有一种情况需要考虑他们的使用
msg = “my name is guo,i'm 18 ysers oid!”
多行字符串时必须使用多引号
msg = '''
多行字符串
时必须使用多引号
'''
字符串的拼接
'hello'+'world' = 'helloworld'
'hello'*2 = 'hellohello'
注意:字符串相加只能是字符串和字符串相加,而且效率不高,不建议使用
6.列表:在[]中,使用逗号分隔,可以存放多个任意类型的值
列表使用索引取值:list_info =['name','age',['level','123']]
list_info[2][0]='level'
7.字典:在{}内,只用逗号隔开,可以存放多个key:value的值,value可以是任意类型
字典使用key取值:dict_info={'name':'egon','age':18}
dict_info['name']='egon'
8.布尔类型:只有两个值True,False
所有数据类型都自带bool值;只有在None,0,空(空字符串,空列表,空字典)三种情况下布尔值为False,其余全部为真
9.格式化输出:占位符%s,%d
%s接受字符和数字,%d只接受数字
10基本运算符
算数运算 + - * / %(取余) //(地板处--只取商的整数部分) **
比较运算 == !=(不等于的建议使用方法) <> > < >= <=
赋值运算 = += -= *= /= %= **= //= 例:count+=1---count = count + 1 其他类似
逻辑运算 and 逻辑与 如果x是False,x and y 返回False,否则返回y的计算值
or 逻辑或 如果x是True,它返回True,否则返回y的计算值
not 逻辑非,如果x是True,返回False,如果x为False,它返回True
11流程控制之if...else
嵌套: if 条件:
代码
elif条件:
代码
else:
代码
1 count=0 2 age=18 3 while count < 3: 4 inp_age = input('enter your age: ') 5 inp_age = int(inp_age) 6 if inp_age == age: 7 print('猜对了!') 8 break 9 else: 10 print('猜错了!') 11 count += 1 12 if count == 3 : 13 print('尝试次数过多!没有机会了')
count=0 age=18 while count <= 3: inp_age = input('enter your age: ') inp_age = int(inp_age) if inp_age == age: print('猜对了!') break elif count == 3: print('尝试次数过多!没有机会了') break else: print('猜错了!') count += 1
12流程控制之while循环
while 条件:
循环体
# 如果条件为真,那么循环体则执行,执行完毕后再次循环,重新判断条件。。。
# 如果条件为假,那么循环体不执行,循环终止
循环嵌套与tag
tag=True
while tag:
......
while tag:
........
while tag:
tag=False
当tag=False时,所有while循环全部退出
break:退出本层循环
continue:退出本次循环,继续下一次循环
1 tag = True 2 name = 'egon' 3 age = 18 4 while tag: 5 inp_name = input('enter your name: ') 6 if inp_name == name: 7 while tag: 8 inp_age = input('enter your age: ') 9 inp_age = int(inp_age) 10 if inp_age == age: 11 print('login successful') 12 tag = False 13 else: 14 print('login Error') 15 else: 16 print('name Error')
whlie + else
#与其它语言else 一般只与if 搭配不同,在Python 中还有个while ...else 语句,
#while 后面的else 作用是指,当while 循环正常执行完,中间没有被break 中止
#的话,就会执行else后面的语句
count = 0 while count <= 5 : count += 1 print("bingo",count) else: print("xxxxxxxxxxxx")