一、python介绍&循环
2018-08-06 09:14:28来源:博客园 阅读 ()
一、第一个python程序
python代码的2种执行方式:
文件执行
- 使用notepad++创建一个文件,输入以下代码
1 print('hello,world')
2. 保存为hello.py文件
3. 进入cmd命令行,执行 python hello.py 看结果
交互器执行
python交互器主要用来对代码进行调试使用。
二、变量
- 什么是变量:量是记录现实世界的某种状态 , 变是记录的状态需要经常变化的
- 为什么要有变量 :程序执行的本质就是一系列的变化,所以需要一种机制能够反映执行时的状态以及状态的变化
- 怎么用变量
1、如何定义变量,变量定义分为三部分
变量名:专门用来访问变量值的
赋值符号:将值与变量名绑定到一起
值:是我们存储的数据(内存),用来表示现实世界的某种状态
1 level=10 2 age=20 3 name='momo'
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',
】
3、变量名的命名风格有2种:(前提:变量名应该见名知意)
- 驼峰体
NumberOfStudents=99
- 下划线
number_of_students=99
4、is 与 ==
1 #ps:id不相同,值可以相同。 2 # id如果相同,值一定相同。 3 4 #is判断id号,id即为内存地址 5 x=333 6 y=333 7 print(id(x)) 8 print(id(y)) 9 print(x is y) 10 11 #==判断值是否相等 12 print(x == y)
5、变量的内存管理
python解释器自带垃圾回收机制,会在变量值没有任何引用的情况下 自带回收垃圾
6、常量:不变的量
在python中没有定义常量的语法,变量名全为大写加下划线组合 为常量 是一种约定俗成的说法(规范)
三、与用户交互
username=input('please enter your name:').strip() print('hello world','hello',username)
接受用户输入的信息,执行输出加输入的结果
四、基本数据类型
1.整数(int)
记录年龄、等级、各种号码
age=10 #age=int(10) print(type(age))
2.浮点型(float)
记录身高、体重、薪资等
salary=3.1 #salary=float(3.1) print(type(salary))
3、字符串(str)
在单引号、双引号、三引号内包含的一串字符
记录描述性质的状态
x='abc' #x=str('abc') y="def" z="""aaaa""" print(type(x)) print(type(y)) print(type(z))
- 字符串可以使用+与*
1 x='hello' 2 y='world' 3 res=x + y 4 print(res) 5 6 name=input('>>: ') 7 print('my name is ' + name) 8 9 x='hello' 10 print(x*10) 11 print(1) 12 print(2) 13 print(3) 14 print('='*100) 15 print(4) 16 print(5) 17 print(6)
4、列表类型(list)
在[ ] 内用逗号隔开,存放多个任意类型的值
作用:用于存放多个值,并且可以按照索引灵活取出任意位置对应的值
1 l=[1,3.1,'aa',[1,2]] #l=list([1,3.1,'aa',[1,2]]) 2 print(type(l)) 3 4 hobbies=['read','sleep','eat','music'] 5 print(hobbies[3]) 6 7 students_info=[ 8 ['momo',18,['play',]], 9 ['lisi',18,['play','sleep']] 10 ] 11 print(students_info[1][2][1])
ps:当存放的多个值都是统一类型时,最好用列表
5、字典类型(dict)
在{ }内用逗号隔开多个元素,每一个元素都是k : v的形式,其中v可以是任意数据类型,而k大部分都应该是字符串类型。
作用:用来存放多个值,但是每一个值都有一个明确的key来与之对应,key对value具有描述的功能
1 user_dic={ 2 '1':'小当家', 3 '2':'小蘑菇', 4 '3':'小火柴' 5 } 6 print(user_dic['2'])
ps:当存放多个值种类有明显的区别时最好用字典
6、布尔值
布尔值就两个 : True ,False
作用:用于判断真假
五、格式化输出
s%就是代表占位符(d%代表数字占位)
1 name=input('>>: ') 2 print('my name is',name) 3 4 inp_name=input('name>>: ') 5 inp_age=input('age>>: ') 6 print('my name is',inp_name,'my name is',inp_age) 7 print('my name is %s my age is %s' %(inp_name,inp_age)) 8 9 #%d只能接收数字类型,而%s可以接收任意数据类型 10 print('my age is %d' %18) 11 print('my age is %d' %'aaa')
六、基本运算符
数学运算
1 print(1+10) 2 print(1-10) 3 print(2*10) 4 5 print(10 / 3) # 有零有整 6 print(10 // 3) # 只取整数部分 7 print(10 % 3) #取余数 8 9 print(2**3) #即为2的3次方
比较运算
print(1 == 1) #是否相等 print(10 >= 10) #是否大于等于 print(10 > 10) #是否大于 print(1 != 2) # 是否不等于
赋值运算
age=18 age+=1 #age=age+1 print(age) age-=1
交叉赋值
1 m=10 2 n=11 3 temp=m 4 m=n 5 n=temp 6 print(m,n) 7 8 m,n=n,m ##python的精髓 9 print(m,n)
变量值的解压
1 nums=[23,33,44,55,66] 2 #mon1=nums[0] 3 #mon2=nums[1] 4 #mon3=nums[2] 5 #mon4=nums[3] 6 #mon5=nums[4] 7 mon1,mon2,mon3,mon4,mon5=nums #解压值 8 print(mon1,mon2,mon3,mon4,mon5) 9 10 _=33333 11 print(_) 12 mon1,mon2,*_=nums 13 print(mon1,mon2) 14 15 16 m,*_,n=nums 17 print(m,n)
逻辑运算符
1 #and逻辑与:and用于连接左右两个条件,只有在左右两个条件的结果都为True的情况下and的最终结果才为True 2 print(3 > 2 and 'momo' == 'momo') 3 4 #or逻辑或:or用于连接左右两个条件,左右两个条件的结果但凡有一个为True,or的最终结果就为True 5 print(True or False) 6 print(True or True) 7 print(False or False) 8 9 print((3 > 2 and 4 > 3) or (1 == 1 and 'x' == 'x' or 3 >= 3)) 10 11 print(not 1 > 2)
成员运算
1 la=['xiaomogu','xiaohuochai','xiaonvhai'] 2 print('xiaohuochai' not in la) 3 print(not 'xiaonvhai2' in la)
七、流程控制之if判断
单分支:满足条件后要执行的代码
sex='female' age=19 is_beautiful=True if sex == 'female' and age > 16 and age < 20 and is_beautiful: print('表白...')
双分支:满足时执行一段,不满足条件时执行另一段代码
1 sex='female' 2 age=60 3 is_beautiful=True 4 5 if sex == 'female' and age > 16 and age < 20 and is_beautiful: 6 print('表白...') 7 else: 8 print('阿姨好')
if判断的嵌套:if判断中接另一个if判断
1 sex='female' 2 age=18 3 is_beautiful=True 4 is_successfull=False 5 6 if sex == 'female' and age > 16 and age < 20 and is_beautiful: 7 print('表白...') 8 if is_successfull: 9 print('在一起') 10 else: 11 print('阿姨好,我逗你玩呢') 12 else: 13 print('阿姨好')
多分支:
1 #如果:成绩>=90,那么:优秀 2 #如果成绩>=80且<90,那么:良好 3 #如果成绩>=70且<80,那么:普通 4 #其他情况:很差 5 score=input('your score>>: ') 6 score=int(score) 7 if score >= 90: 8 print('优秀') 9 elif score >=80 : 10 print('良好') 11 elif score >=70: 12 print('普通') 13 else: 14 print('很差')
八、流程控制之while循环
while循环:又称为条件循环,即当满足什么条件时才终止,不然就会一直执行下去。
1.循环打印0-100
1 n=0 2 while n <=100: 3 print(n) 4 n+=1
2.模拟用户登录
1 user_of_db='xiaomogu' 2 pwd_of_db='mogu123' 3 4 while True: 5 inp_user=input('please input your name: ') 6 inp_pwd=input('please input your password: ') 7 8 if inp_user == user_of_db and inp_pwd == pwd_of_db: 9 print('login successfull') 10 else: 11 print('user or password error')
3.1 循环中止语句
如果循环没有设置满足什么条件才结束,怎么才能结束循环呢?
这就用到break 或 continue 语句
- break : 用于完全结束一个循环,跳出循环体执行循环后面的语句
1 user_of_db='xiaomogu' 2 pwd_of_db='mogu123' 3 4 while True: 5 inp_user=input('please input your name: ') 6 inp_pwd=input('please input your password: ') 7 8 if inp_user == user_of_db and inp_pwd == pwd_of_db: 9 print('login successfull') 10 break #只要登录成功,即结束循环体 11 else: 12 print('user or password error')
- continue :和break类似,但是区别在于continue只是中止了本次循环,接着会执行后面的代码。
1 #强调:continue一定不要加到代码的最后一步 2 3 n=0 4 while n < 6: #n=6 5 if n == 4: 6 n+=1 #n=5 7 continue 8 print(n) 9 n+=1 #n=6
示例:
while循环模拟用户登录,输错三次即退出循环,格式化输出
1 user_of_db='xiaomogu' 2 pwd_of_db='mogu123' 3 4 tag=True 5 count=0 6 while tag: 7 if count == 3: 8 print('尝试次数过多') 9 break 10 inp_user=input('please input your name: ') 11 inp_pwd=input('please input your password: ') 12 13 if inp_user == user_of_db and inp_pwd == pwd_of_db: 14 print('login successfull') 15 while tag: 16 cmd=input('cmd>>>: ') 17 if cmd == 'q': 18 tag=False 19 break 20 print('命令[%s]运行' %cmd) 21 else: 22 print('user or password error') 23 count+=1
九、练习作业
基础需求: 让用户输入用户名密码 认证成功后显示欢迎信息 输错三次后退出程序
升级需求:
可以支持多个用户登录 (提示,通过列表存多个账户信息)
用户3次认证失败后,退出程序,再次启动程序尝试登录时,还是锁定状态(提示:需把用户锁定的状态存到文件里)
1 names={'momo':{'passwd':'123'}, 2 'mogu':{'passwd':'213'}, 3 'xiaomogu':{'passwd':'321'}} 4 n=0 5 while True: 6 with open('认证状态',mode='rt',encoding='utf-8') as f:#查询判断认证状态文件 7 if '锁定' in f.read(): 8 print('已锁定') 9 break 10 with open('认证状态',mode='at',encoding='utf-8') as f1:#判断条件写入信息 11 if n==3 :#输错3次直接锁定 12 f1.write('锁定') 13 print('已锁定') 14 break 15 name=input('请输入您的用户名:').strip() 16 if name not in names: 17 print('用户不存在,请重新输入') 18 continue 19 pwd = input('请输入您的密码:').strip() 20 if pwd == names[name]['passwd']: 21 print('恭喜您登录成功!') 22 break 23 else: 24 print('密码输入错误') 25 n+=1
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- python3基础之“术语表(2)” 2019-08-13
- python3 之 字符串编码小结(Unicode、utf-8、gbk、gb2312等 2019-08-13
- Python3安装impala 2019-08-13
- 小白如何入门 Python 爬虫? 2019-08-13
- python_字符串方法 2019-08-13
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash