zoukankan      html  css  js  c++  java
  • s5_day4作业

    # #流程控制练习题:
    # #==========>基础部分
    # #练习一:
    # if True or False and False:
    #     print('yes')
    # else:
    #     print('no')
    # #输出结果为?为什么?
    #and优先级比or高,所以先计算False and False,
    # 结果是False,True or False结果为True,输出结果为Yes
    # if (True or False) and False:
    #     print('yes')
    # else:
    #     print('no')
    # #输出结果为?为什么?
    #先计算括号里的,True or False结果为True,True and False结果为False,
    # 输出结果为no,
    # #练习二:编写if多分支,猜老男孩的年纪
    # age=50
    # while True:
    #     a = int(input('猜年龄:'))
    #     if a>age:
    #         print('猜大了')
    #         continue
    #     elif a<age:
    #         print('猜小了')
    #         continue
    #     else:
    #         print('猜对了')
    #         break
    # #练习三:用户输入用户名密码验证,验证通过后进入子循环,输入命令,命令若为q,则退出所有循环
    # flag=True
    # while flag:
    #     name=input('name: ')
    #     pwd=input('password: ')
    #     if name == 'z'and pwd=='123':
    #         while flag:
    #             cmd=input('>>>')
    #             if cmd=='q':
    #                 flag=False
    # #练习四:循环取出元组中所有元素:方式一:while和for(按照索引),方式二:不按照索引的方式
    # t=(1,2,3,4,5,6,7,8,9)
    #方式一
    # s=0
    # while s<len(t):
    #    print(t[s])
    #    s+=1
    # for i in range(len(t)):
    #     print(t[i])
    # 方式二
    # for i in t:
    #     print(i)
    # #练习五:循环读取列表以及子列表中所有元素
    l=[1,2,[3,4],[5,6]]
    # 第一种
    # s=0
    # while s<len(l):
    #     # if type(l[s]) is list:
    #     if isinstance(l[s],list):#推荐使用这种
    #         for i in l[s]:
    #             print(i)
    #     else:
    #         print(l[s])
    #     s+=1
    # 第二种
    # for i in l:
    #     #if type(i)==list:
    #     if isinstance(i,list):#推荐使用这种
    #         for i1 in i:
    #             print(i1)
    #     else:
    #         print(i)
    # #练习六:打印
    # '''
    #    *
    #   ***
    #  *****
    # *******
    # '''
    # for i in range(1,8,2): #1 3 5 7
    #     print(' '*(4-(i+1)//2)+'*'*i)
    # #练习七:打印
    # '''
    #  *****
    #   ***
    #    *
    # '''
    # for i in range(5,0,-2):
    #     print(' '*(4-(i+1)//2)+'*'*i)
    # #练习八:打印
    # '''
    # *
    # **
    # ***
    # ****
    # *****
    # '''
    # for i in range(6):
    #     print('*'*i)
    # #练习九:打印
    # '''
    # ******
    # *****
    # ****
    # ***
    # **
    # *
    # '''
    # for i in range(6,0,-1):
    #     print('*'*i)
    # #练习十:编写登陆接口
    # 基础需求:
    # 让用户输入用户名密码
    # 认证成功后显示欢迎信息
    # 输错三次后退出程序
    # count=0
    # while count<3:
    #     name = input('name: ')
    #     pwd=input('password: ')
    #     if name == 'z'and pwd=='123':
    #         print('successful')
    #     else:
    #         count += 1
    #         continue
    # #数据类型练习题:
    # #练习一:有十进制数
    # n=10
    # 转成二进制
    # print(bin(n))
    # 转成八进制
    # print(oct(n))
    # 转成十六进制
    # print(hex(n))
    # #练习二:与用户交互,要求用户输入年龄和薪资,将用户输入的年龄转成整形,将用户输入的薪资转成浮点型
    # age=int(input('age: '))
    # print(type(age))
    # salary=float(input('salary: '))
    # print(type(salary))
    # #练习三:
    # 用户输入用户名,年纪,工作,爱好,格式化输出如下内容(使用%s和format两种方式)
    # ------------ info of Alex Li -----------
    # Name  : Alex Li
    # Age   : 22
    # job   : Teacher
    # Hobbie: girl
    # ------------- end -----------------
    
    # %s 方式
    # s = """
    # ------------ info of Alex Li -----------
    # Name  : %s
    # Age   : %s
    # job   : %s
    # Hobbie: %s
    # ------------- end -----------------
    # """
    #
    # name = input("请输入用户名:").strip()
    # age = input("请输入年纪:").strip()
    # job = input("请输入工作:").strip()
    # hobbie = input("请输入爱好:").strip()
    # print(s % (name, age, job, hobbie))
    
    # format 方式
    # s = """
    # ------------ info of Alex Li -----------
    # Name  : {}
    # Age   : {}
    # job   : {}
    # Hobbie: {}
    # ------------- end -----------------
    # """
    #
    # name = input("请输入用户名:").strip()
    # age = input("请输入年纪:").strip()
    # job = input("请输入工作:").strip()
    # hobbie = input("请输入爱好:").strip()
    # print(s.format(name, age, job, hobbie))
    # #练习四:
    s='alex say hello'
    # 切片取出第say
    # print(s[5:8])
    # 切片取出倒数后两个字符
    # print(s[-2:])
    # #练习五:
    # # 编写循环,让用户输入年纪,如果输入为空,或者不为数字,则重新输入
    # while True:
    #     a=input('输入年纪:')
    #     if not a or not a.isdigit():
    #         continue
    #     break
    # #练习六:
    # 用列表模拟上电梯的流程(队列)#先进先出
    #     循环生成一个1000个值的列表(入队)
    #     循环取走这个1000个值(出队)
    # q = []  # 定义一个列表
    # for i in range(1000):
    #     q.append(i)  # 入队
    #
    # for j in range(1000):
    #     print(q[0])  # 依次出队
    #
    # 用列表模拟把衣服放箱子里,然后取衣服的流程(堆栈)#先进后出,后进先出
    #     循环生成一个1000个值的列表(入栈)
    #     循环取走这个1000个值(出栈)
    # q = []
    # for i in range(1000):
    #     q.append(i)
    #
    # for j in range(1, 1001):
    #     print(q[-j])
    #
    #
    # #元组
    #
    #
    # #字典
    #
    #
    # #集合
    #
    #
    # #tuple和list互相转换
    #
    #
    # #练习七:
    # dicta={'a':1,'b':2,'c':3,'d':'hello'}
    # dictb={'b':3,'c':2,'d':'world','f':10}
    # #两字典相加,不同的key对应的值保留,相同的key对应的值相加后保留,如果是字符串就拼接(字符串拼接'hello'+'world'得'helloworld')
    # # {'a': 1, 'b': 5, 'c': 5, 'd': 'helloworld', 'f': 10}
    # for i in dicta:
    #     if i in dictb:
    #         dicta[i]+=dictb.pop(i)
    # else:
    #     dicta.update(dictb)
    # print(dicta)
    #
    # 练习八:
    # a.实现用户输入用户名和密码,当用户名为seven且密码为123时,显示登录成功,否则登录失败!
    # while True:
    #     name=input('name:')
    #     pwd=input('passwd:')
    #     if name == 'seven' and pwd=='123':
    #         print('登陆成功')
    #         break
    #     else:
    #         print('登陆失败')
    # b.实现用户输入用户名和密码,当用户名为seven且密码为123时,显示登录成功,否则登录失败,失败时允许重复输入三次
    # count=0
    # while count<3:
    #     name=input('name:')
    #     pwd=input('passwd:')
    #     if name == 'seven' and pwd=='123':
    #         print('登陆成功')
    #         break
    #     else:
    #         print('登陆失败')
    #         count+=1
    # c.实现用户输入用户名和密码,当用户名为seven或alex且密码为123时,显示登录成功,否则登录失败,失败时允许重复输入三次
    # count=0
    # while count<3:
    #     name=input('name:')
    #     pwd=input('passwd:')
    #     if name == 'seven' or name=='alex' and pwd=='123':
    #         print('登陆成功')
    #         break
    #     else:
    #         print('登陆失败')
    #         count+=1
    
    # 练习九:
    # 写代码
    # a.使用while循环实现输出2-3+4-5+6...+100的和
    # s=0
    # n=1
    # while n<100:
    #     n+=1
    #     if n%2==0:
    #         s+=n
    #     else:
    #         s-=n
    # print(s)
    # b.使用for循环和range实现输出1-2+3-4+5-6...+99的和
    # s=0
    # for i in range(1,100):
    #     if i%2==1:
    #         s+=i
    #     else:
    #         s-=i
    # print(s)
    # c.使用while循环实现输出1,2,3,4,5   7,8,9  11,12
    # i=0
    # while i<12:
    #     i+=1
    #     if i==6 or i==10:
    #         continue
    #     print(i)
    # d.使用while循环实现输出1-100内的所有奇数
    # i=0
    # while i<100:
    #     i+=1
    #     if i%2==1:
    #         print(i)
    # e.使用while循环实现输出1-100内的所有偶数
    # i=0
    # while i<100:
    #     i+=1
    #     if i%2==0:
    #         print(i)
    # 练习十:
    name = "alex"
    # a.移除name变量对应的值的两边的空格,并输入移除有的内容
    # print(name.strip())
    # b.判断name变量对应的值是否以"al"开头,并输出结果
    # print(name.startswith('al'))
    # c.判断name变量对应的值是否以"x"结尾,并输出结果
    # print(name.endswith('x'))
    # d.将name变量对应的值中的"l"替换为"p",并输出结果
    # print(name.replace('l','p'))
    # e.将name变量对应的值根据"l"分割,并输出结果
    # print(name.split('l'))
    # f.请问,上一题e分割之后得到的值是什么类型
    # print(type(name.split('l')))
    # g.将name变量对应的值中变大写,并输出结果
    # print(name.upper())
    # h.将name变量对应的值中变小写,并输出结果
    # print(name.lower())
    # i.请输出name变量对应的值的第2个字符?
    # print(name[1])
    # j.请输出name变量对应的值的前3个字符?
    # print(name[:3])
    # k.请输出name变量对应的值的后2个字符?
    # print(name[-2:])
    # l.请输出name变量对应的值中"e"所在的索引位置?
    # print(name.index('e'))
    # 练习十一:
    # 写代码,有如下列表,按照要求实现每一个功能
    li = ['alex','eric','rain','eric','rain']
    # a.计算列表长度并输出
    # print(len(li))
    # b.列表中追加元素"seven",并输出添加后的列表
    # li.append('seven')
    # print(li)
    # c.请在列表的第1个位置插入元素"Tony",并输出添加后的列表
    # li.insert(0,'Tony')
    # print(li)
    # d.请修改列表第2个位置的元素为"Kelly",并输出修改后的列表
    # li[1]='Kelly'
    # print(li)
    # e.请删除列表中的元素"eric",并输出修改后的列表
    # li.remove('eric')
    # print(li)
    # f.请删除列表中的第2个元素,并输出删除元素的值和删除元素后的列表
    # print(li.pop(1))
    # print(li)
    # g.请删除列表中的第3个元素,并输出删除元素后的列表
    # li.pop(2)
    # print(li)
    # h.请删除列表中的第2至4个元素,并输出删除元素后的列表
    # 第一种
    # del li[1:4]
    # 第二种
    # li[1:4]=[]
    # print(li)
    # i.请将列表所有的元素反转,并输出反转后的列表
    # 第一种
    # li.reverse()#返回值是None
    # print(li)
    # 第二种
    # print(li[::-1])#返回值是反转后的新列表
    # #练习十二:
    # 取出列表中的名字,年龄,出生的年,月,日
    # data=['alex',49,[1900,3,18]]
    # for i in data:
    #     if type(i) is list:
    #         for i1 in i:
    #             print(i1)
    #     else:
    #         print(i)
    # #练习十三:
    # 去掉重复
    # names=['egon','alex','egon','wupeiqi']
    # print(list(set(names)))
    # print(list(dict.fromkeys(names)))#利用字典的key不能重复来去重
    # #练习十四:
    # 去掉重复,且保证列表顺序与原来保持一致
    # names=['egon','alex','egon','wupeiqi']
    # 方法一:有序字典
    # from collections import OrderedDict
    # names = list(OrderedDict.fromkeys(names))
    # print(names)
    # 方法二:利用set
    # seen = set()
    # names = [x for x in names if not (x in seen or seen.add(x))]
    # print(names)
    # 方法三
    # print(list(dict.fromkeys(names)))
    # #练习十五:
    # 去掉重复,且保证列表顺序与原来保持一致
    # names=[[1,2],3,[1,2],4]
    # a=[]
    # for i in names:
    #     if i not in a:
    #         a.append(i)
    # print(a)
    # #练习十六:
    # 统计s='hello alex alex say hello sb sb'中每个单词的个数
    # s = 'hello alex alex say hello sb sb'
    # s_l = s.split()  # 按空格分割成列表
    # keys = set(s_l)  # 取到所有出现过的单词
    # for i in keys:
    #     print(i, s_l.count(i))  # 打印下数量
    # #练习十七:字典嵌套使用
    # #alex发表了朋友圈:
    # alex_msg='''
    #     我想淫一首小诗
    #     歌颂我的同桌
    #     她乌黑的头发
    #     好像一直炸毛鸡
    # '''
    #
    # #eogn发表了朋友圈:
    # egon_msg='''
    #     总有文盲装文艺
    # '''
    #
    #
    # comments={
    #     alex_msg:{
    #         'author':'alex',
    #         'comments':[
    #             ('wupeiqi','真傻比'),
    #             ('元昊','确实傻比'),
    #             ('egon','同上')
    #         ],
    #         'thumb_counts':3,
    #     },
    #     egon_msg:{
    #         'author':'egon',
    #         'comments':[
    #             ('alex','说谁呢'),
    #             ('元昊','你被开除了'),
    #             ('wupeiqi','好刺激')
    #         ],
    #         'thumb_counts':2,
    #     },
    # }
  • 相关阅读:
    (转)不可思议的纯CSS导航栏下划线跟随效果
    (转)Java语法----Java中equals和==的区别
    (转)Vue种key的作用
    Android实现点击通知栏后,先启动应用再打开目标Activity ,极光推送等推送的也可以参考一下(转)
    第三方开源--Android Image Cropper--图片裁剪
    Cannot merge new index 65781 into a non-jumbo instruction! 问题解决(网上摘抄)
    推荐扔物线的HenCoder Android 开发进阶系列 后期接着更新
    Android DIY之路 (一) 指定区域多图片合成 放大 缩小 镜像 旋转 等(转)
    功能强大的图片截取修剪神器:Android SimpleCropView及其实例代码重用简析(转)
    Android 你可能忽略的提高敲代码效率的方式 (转)
  • 原文地址:https://www.cnblogs.com/z-x-y/p/7040153.html
Copyright © 2011-2022 走看看