一 第一句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()