一 第一句python代码
1. 解释器:即时调试代码,代码无法永久保存
2. 文件:永久保存代码
在D:\python_test\目录下新建文件hello.py,编写代码如下
print(‘hello world‘)
执行hello.py,即python D:\python_test\hello.py
python内部执行过程如下:
上一步中执行python D:\python_test\hello.py时,明确的指出 hello.py 脚本由 python 解释器来执行。
在linux平台中如果想要类似于执行shell脚本一样执行python脚本,例: ./hello.py
,那么就需要在 hello.py 文件的头部指定解释器,如下:
#!/usr/bin/env python #该行只对linux有效 print(‘hello world‘)
二 文件头
#!/usr/bin/env python
# -*- coding: utf-8 -*-
三 变量
为何要有变量
程序执行的本质就是一系列状态的变化,变量二字的核心一个是变,一个是量,‘变‘正好对应程序的变化,‘量‘即计量,反映的是某种状态,
比如一款游戏中的人物初始等级:level=1,过了一段时间后升级了:level=10
3.1变量的声明与引用
#!/usr/bin/env python name=‘egon‘ #变量的声明name #通过变量名,引用变量的值print(name) #引用并且打印变量名name对应的值,即‘egon‘
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‘]
3.3 变量的赋值
#!/usr/bin/env python name1=‘lhf‘ name2=‘egon‘
#!/usr/bin/env python name1=‘lhf‘ name2=name1
#!/usr/bin/env python #一个游戏人物的等级由1级升到2级 level=1 level=2 #一个游戏帐号的密码由‘123‘改成‘456‘ passwd=‘123‘ passwd=‘456‘ #一个人的名字有‘lhf‘改成‘egon‘ name=‘lhf‘ name=‘egon‘
四 输入输出
python3中统一都是input,python2中有raw_input等同于python3的input,另外python2中也有input
1.res=input("python3: ")
2.res=raw_input("python2: ")
3.res=raw_input("python2: ")
1,2无论接收何种输入,都被存为字符串赋值给res,而3的意思是,用户输入何种类型,就以何种类型赋值给res
#!/usr/bin/env python name=input(‘请输入用户名:‘) print(name)
执行
C:\Users\Administrator>python D:\python_test\hello.py 请输入用户名:egon egon
===============================================================================
输入密码时,如果想要不可见,需要利用getpass 模块中的 getpass方法,即:
#!/usr/bin/env python import getpass password=getpass.getpass(‘请输入密码:‘) print(password)
执行(在pycharm中无法执行,需要到终端中执行)
C:\Users\Administrator>python D:\python_test\hello.py 请输入密码: 123456
五 流程控制
5.1条件语句
1 单分支
2 多分支
需求一、用户登陆验证
#!/usr/bin/env python name=input(‘请输入用户名字:‘) password=input(‘请输入密码:‘) if name == ‘egon‘ and password == ‘123‘: print(‘egon login success‘) else: print(‘用户名或密码错误‘)
需求二、根据用户输入内容输出其权限
#!/usr/bin/env python #根据用户输入内容打印其权限 ‘‘‘ egon --> 超级管理员 tom --> 普通管理员 jack,rain --> 业务主管 其他 --> 普通用户 ‘‘‘ name=input(‘请输入用户名字:‘) if name == ‘egon‘: print(‘超级管理员‘) elif name == ‘tom‘: print(‘普通管理员‘) elif name == ‘jack‘ or name == ‘rain‘: print(‘业务主管‘) else: print(‘普通用户‘)
5.2 循环语句
while 循环
1、基本循环
while 条件: # 循环体 # 如果条件为真,那么循环体则执行 # 如果条件为假,那么循环体不执行
2、break
break用于退出本层循环
while True: print "123" break print "456"
3、continue
continue用于退出本次循环,继续下一次循环
while True: print "123" continue print "456"
4 tag
#!/usr/bin/env python #_*_coding:utf-8_*_ # while True: # username=input(‘username: ‘) # password=input(‘password: ‘) # if username == ‘egon‘ and password == ‘123‘: # while True: # cmd=input(‘>>: ‘) # if cmd == ‘q‘: # break # print(‘------>%s‘ %cmd) # break tag=True while tag: username=input(‘username: ‘) password=input(‘password: ‘) if username == ‘egon‘ and password == ‘123‘: while tag: cmd=input(‘>>: ‘) if cmd == ‘q‘: tag=False continue print(‘------>%s‘ %cmd)
for循环
for i in range(1,10): for j in range(1,i+1): print(‘%s*%s=%s‘ %(i,j,i*j),end=‘ ‘) print()