首页 > 编程语言 >python进阶之路5

python进阶之路5

时间:2022-09-27 20:34:30浏览次数:61  
标签:username 进阶 python 代码 之路 else print input age

作业讲解

1.获取用户输入并打印成下列格式
	 ------------ info of Jason -----------
    Name : Jason
    Age  : 18
    Sex  : male
    Job  : Teacher 
    ---------------- end -----------------
	 # 1.先制定一个打印的模板
    info_demo = """
        ------------ info of %s -------------
        Name : %s
        Age  : %s
        Job  : %s 
        ---------------- end -----------------
    """
    # 2.获取用户输入
    username = input('username>>>:')
    age = input('age>>>:')
    job = input('job>>>:')
    # 3.格式化输出
    print(info_demo % (username, username, age, job))
    
2.准备说出下列变量名v绑定的结果
	 v1 = 1 or 3
    v2 = 1 and 3
    v3 = 0 and 2 and 1
    v4 = 0 and 2 or 1
    v5 = 0 and 2 or 1 or 4
    v6 = 0 or False and 1

垃圾回收机制

"""
有一些语言,内存空间的申请和释放都需要程序员自己写代码才可以完成
但是python却不需要 通过垃圾回收机制自动管理
"""
1.引用计数
	name = 'jason'	数据值jason身上的引用计数为1
   name1 = name 	数据值jason身上的引用计数加一 为2
	del name1 		数据值Jason身上的引用计数减一 为1
   当数据值身上的引用计数为0的时候 就会被垃圾回收机制当做垃圾回收掉
	当数据值身上的引用计数不为0的时候 永远不会被垃圾回收机制回收
2.标记清除
	主要针对循环引用问题
    	l1 = [11,22] # 引用计数为1
       l2 = [33,44] # 引用计数为1
		l1.append(l2) # l1 = [11, 22,l2列表] 引用计数为2
       l2.append(l1) # l1 = [11, 22,l1列表] 引用计数为2 
    	del l1  # 断开变量名l1与列表的绑定关系   引用计数为1
   		del l2  # 断开变量名l2与列表的绑定关系   引用计数为1
    当内存占用达到临界值的时候 程序会自动停止 然后扫描程序中所有的数据
    并给只产生循环引用的数据打上标记 之后一次性清除
    
3.分代回收
	垃圾回收机制的频繁运行也会损耗各项资源
   新生代、青春代、老年代(越往下检测频率越低,根据该变量的使用频率来看是否进行回收)

流程控制理论

流程控制>>>:控制事物的执行流程
    事物执行流程总共可以分为三种
    1.顺序结构
    	从上往下依次执行 我们之前所编写的代码都属于该结构
    2.分支结构
    	事物的执行会根据条件的不同做出不同的执行策略
    3.循环结构
    	事物的执行会根据某个条件出现重复
 ps:在代码的世界里 很多时候可能会出现三者混合 
提示:作为小白 在学习流程控制的时候 建议做到代码和图形相结合

流程控制必备知识

1.python中使用代码的缩进来表示代码的从属关系
	从属关系:缩进的代码(子代码)是否执行取决于上面没有缩进的代码
2.并不是所有的代码都可以拥有缩进的代码(子代码)
	if关键字
3.如果有多行子代码属于同一个父代码 那么这些子代码需要保证想相同的缩进量
4.python中针对缩进量没有具体的要求 但是推荐使用四个空格(windows中tab键)
5.当某一行代码需要写子代码的时候 那么这一行代码的结尾肯定需要冒号
6.相同的缩进量的代码彼此之间平起平坐 按照顺序结构依次执行

分支结构if...elif....else

1.单if分支结构
	if条件:
        条件成立之后才会执行的代码块
  ps:单if可以借助于流程图理解
    username = input('username>>>:')
	 if username == 'jason':
	     print('老师好')
2.if ....else.....分支结构
	if条件:
      条件成立之后执行的子代码
   else:
    	条件不成立执行的子代码
    username = input('username>>>:')
    if username == 'jason':
        print('老师好')
    else:
        print('去你妹的')
3.if ...elif.....else分支结构
	if 条件1:
        条件1成立之后执行的子代码
   	elif 条件2:
        条件1不成立 条件2成立执行的子代码
  	elif 条件3
    	 条件1和2都不成立 条件3成立执行的子代码
   else:
    	上述条件都不成立 执行的子代码
  ps:中间的elif可以写多个、上述子代码永远只会走一个
    score = input('请输入学生成绩>>>:')
    score = int(score)  # 将字符串的整数转换成整型的整数
    if score >= 90:
        print('优秀')
    elif score >= 80:
        print('良好')
    elif score >= 70:
        print('一般')
    elif score >= 60:
        print('及格')
    else:
        print('挂科 交钱重修')
4.if的嵌套使用(有点难)
age = 28
height = 170
weight = 110
is_beautiful = True
is_success = False
username = 'tony'
if username == 'tony':
    print('tony发现目标')
    if age < 30 and height > 160 and weight < 150 and is_beautiful:
        print('大妹子 加个微信呗')
        if is_success:
            print('吃饭看电影')
        else:
            print('去你妹的流氓!!!')
    else:
        print('不好意思 认错人了')
else:
    print('不是tony做不出来这件事')

image

循环结构while ...break...continue...else

就是想让一些代码反复的执行
while 条件:
    条件成立之后执行的子代码(循环体代码)
1.先判断条件是否成立
2.如果成立则执行循环体代码
3.循环体代码完毕后再次回到条件判断处 判断条件是否成立
4.如果成立 则继续执行循环体代码
5.按照上述规律依次执行 直到条件不成立才会结束循环体代码的执行
# count = 1
# while count < 5:
#     print('hello world')
#     count += 1  # count = count + 1
# print('想不想干饭')
break  # 强行结束循环体
	while循环体代码一旦执行到break会直接结束循环
continue	# 直接跳到条件判断处
	while循环体代码一旦执行到continue会结束本次循环开始下一次循环
   
while 条件:
    循环体代码
else:
    循环体代码没有被强制结束的情况下 执行完毕就会执行else子代码

作业

整理今日内容及博客

1.根据用户输入内容打印其权限
    '''
    jason --> 超级管理员
    tom  --> 普通管理员
    jack,rain --> 业务主管
    其他 --> 普通用户
    '''
 username = input('请输入用户名>>>:')
 if username == 'jason':
     print('超级管理员')
 elif username == 'tom':
     print('普通管理员')
 elif username == 'jack' or username == 'rain':
     print('业务主管')
 else:
     print('普通用户')
2.编写用户登录程序
 要求:有用户黑名单 如果用户名在黑名单内 则拒绝登录
    eg:black_user_list = ['jason','kevin','tony']
 如果用户名是黑名单以外的用户则允许登录(判断用户名和密码>>>:自定义)
    eg: oscar 123

# 先定义黑名单
black_user_list = ['jason', 'kevin', 'tony']
# 获取用户信息
username = input('username>>>:')
if username not in black_user_list:
    password = input('password>>>:')
    if username == 'oscar'and password == '123':
        print('登陆成功')
    else:
        print('用户名或密码不正确')
else:
    print('无法登陆')

3.编写用户登录程序
 用户如果登录失败 则只能尝试三次
 用户如果登录成功 则直接结束程序

# real_name = 'jason'
# real_pwd = '123'
# count = 1
# # 建立循环
# while count < 4:
#     username = input('username>>>:')
#     password = input('password>>>:')
#     if username == real_name and password == real_pwd:
#         print('登陆成功')
#         break
#     else:
#         print('用户名或密码不正确')
#         count += 1


4.猜年龄的游戏
 假设用户的真实年龄是18 编写一个猜年龄的游戏 获取用户猜测的年龄
 基本要求:可以无限制猜测 每次猜错给出提示(猜大了 猜小了) 猜对则结束程序
 拔高练习:每次猜测只有三次机会 一旦用完则提示用户是否继续尝试 用户通过输入n或者y来表示是否继续尝试 如果是y则继续给用户三次猜测机会 否则结束程序

# # 定义一个真实的年龄
# real_age = 18
# # 加个计数器
# count = 1
# # 建立循环
# while True:
#     if count == 4:
#         choice = input('你已尝试三次是否继(y/n)>>>:')
#         if choice == 'y':
#             count = 1
#         else:
#             print('再见')
#             break
#     # 用户输入
#     is_age = input('is_age>>>:')
#     is_age = int(is_age)
#     # 判断年龄大小
#     if is_age > real_age:
#         print('猜大了')
#         count += 1   # 猜错加1
#     elif is_age < real_age:
#         print('猜小了')
#         count += 1
#     else:
#         print('猜对了 哈哈')
#         break

标签:username,进阶,python,代码,之路,else,print,input,age
From: https://www.cnblogs.com/xm15/p/16735843.html

相关文章

  • 进入python的世界_day5_python基础——流程控制
    写在开头,昨天是补全了八种常见数据类型的剩下三种、用户交互、常用运算符,今天主要学习流程控制很重要昨日作业补充另一种方法:原理:可以将表格整体看成是一个字符串......
  • python基础知识
    垃圾回收机制1.引用计数​name='jason'数据值jason身上的引用计数为1​name1=name数据值jason身上的引用计数加一为2​delname1......
  • Python基础入门(五)
    Python基础入门(五)一、垃圾回收机制1、什么是垃圾回收机制?垃圾回收机制(GC)是Python解释器自带的一种机制,专门回收不可用的变量值所占用的内存空间。2、为什么要用垃圾......
  • python中常用的转义字符
    """python的转义字符1.\n换行2.\t制表符补齐四个占位3.\r覆盖4.\b删除"""print('我是\n梨花')print('我是\t梨花')print('我是\r梨花')print(......
  • python垃圾回收机制、流程控制理论、流程控制理论必备知识、分支结构、循环结构
    目录垃圾回收机制1引用计数2标记清除3分代回收流程控制理论流程控制必备知识分支结构循环结构垃圾回收机制一些语言存放空间和释放都需要程序员自己去写代码完成,但是pyth......
  • 7、python入门篇 垃圾回收和流程控制
    目录今日内容总结一、垃圾回收机制1、引用计数2、标记清除3、分类代收二、流程控制1、理论2、必备知识3、分支结构4、循环结构今日内容总结一、垃圾回收机制垃圾回收机......
  • python之流程控制-分支结构、循环结构
    流程控制编写程序,是将自己的逻辑思想记录下来,使得计算机能够执行的过程。而流程控制,则是逻辑结构中十分重要的一环。在程序中,基础的流程结构分为顺序结构、分支结构、顺......
  • 关于python的opencv库的学习笔记,腐蚀与膨胀
    importcv2importnumpyasnp##img=cv2.imread('cat.jpeg')##cv2.imshow('cat',img)##cv2.waitKey()##cv2.destroyAllWindows()##对图像进行腐蚀操作#ken=np.ones......
  • python 读取excel
    #!/usr/bin/envpython#-*-coding:utf-8-*-importwarningswarnings.filterwarnings('ignore')importopenpyxlfromopenpyxl.cellimportMergedCellimporto......
  • 11 | python脚本更改linux系统下的文件权限
    在文件上传至linux系统的过程中遇到了执行文件不可执行的问题。于是自己写了一个python脚本和文件夹放到一起,上传后运行即可!frompathlibimport*#目录文件名......