# #流程控制练习题:
# #==========>基础部分
# #练习一:
# 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,
# },
# }

s5_day4作业的更多相关文章

  1. python10作业思路及源码:类Fabric主机管理程序开发(仅供参考)

    类Fabric主机管理程序开发 一,作业要求 1, 运行程序列出主机组或者主机列表(已完成) 2,选择指定主机或主机组(已完成) 3,选择主机或主机组传送文件(上传/下载)(已完成) 4,充分使用多线 ...

  2. SQLServer2005创建定时作业任务

    SQLServer定时作业任务:即数据库自动按照定时执行的作业任务,具有周期性不需要人工干预的特点 创建步骤:(使用最高权限的账户登录--sa) 一.启动SQL Server代理(SQL Server ...

  3. 使用T-SQL找出执行时间过长的作业

        有些时候,有些作业遇到问题执行时间过长,因此我写了一个脚本可以根据历史记录,找出执行时间过长的作业,在监控中就可以及时发现这些作业并尽早解决,代码如下:   SELECT sj.name , ...

  4. T-SQL检查停止的复制作业代理,并启动

        有时候搭建的复制在作业比较多的时候,会因为某些情况导致代理停止或出错,如果分发代理时间停止稍微过长可能导致复制延期,从而需要从新初始化复制,带来问题.因此我写了一个脚本定期检查处于停止状态的分 ...

  5. Python09作业思路及源码:高级FTP服务器开发(仅供参考)

    高级FTP服务器开发 一,作业要求 高级FTP服务器开发 用户加密认证(完成) 多用户同时登陆(完成) 每个用户有不同家目录且只能访问自己的家目录(完成) 对用户进行磁盘配额,不同用户配额可不同(完成 ...

  6. 个人作业week3——代码复审

    1.     软件工程师的成长 感想 看了这么多博客,收获颇丰.一方面是对大牛们的计算机之路有了一定的了解,另一方面还是态度最重要,或者说用不用功最重要.这些博客里好些都是九几年或者零几年就开始学习编 ...

  7. 个人作业-week2:关于微软必应词典的案例分析

    第一部分 调研,评测 评测基于微软必应词典Android5.2.2客户端,手机型号为MI NOTE LTE,Android版本为6.0.1. 软件bug:关于这方面,其实有一些疑问.因为相对于市面上其 ...

  8. 软件工程第二次作业——git的使用

    1. 参照 http://www.cnblogs.com/xinz/p/3803109.html 的第一题,每人建立一个GitHub账号,组长建立一个Project,将本组成员纳入此Porject中的 ...

  9. hadoop作业调度策略

    一个Mapreduce作业是通过JobClient向master的JobTasker提交的(JobTasker一直在等待JobClient通过RPC协议提交作业),JobTasker接到JobClie ...

随机推荐

  1. Handler vs Timer,究竟该用哪个?

    Handler vs Timer 在我们Android开发过程中,经常需要执行一些短周期的定时任务,这时候有两个选择Timer或者Handler.然而个人认为:Handler在多个方面比Timer更为 ...

  2. MySql—修改权限

    MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 一.grant 普通数据用户,查询.插入.更新.删除 数据库中所有表数据的权利. grant sele ...

  3. 第一百五十四节,封装库--JavaScript,表单验证--提交验证

    封装库--JavaScript,表单验证--提交验证 将表单的所有必填项,做一个判断函数,填写正确时返回布尔值 最后在提交时,判断每一项是否正确,全部正确才可以 提交 html <div id= ...

  4. python 多线程糗事百科案例

    案例要求参考上一个糗事百科单进程案例 Queue(队列对象) Queue是python中的标准库,可以直接import Queue引用;队列是线程间最常用的交换数据的形式 python下多线程的思考 ...

  5. mysql DBA 指南

    Mysql目录 数据库介绍.常见分类 Mysql入门 Mysql安装配置 Mysql多实例安装配置 Mysql常用基本命令 Mysql权限体系 Mysql数据库备份和恢复 Mysql日志 Mysql逻 ...

  6. Tweened Animations 渐变动作

    Tweened Animations 渐变动作 Animations分两类: 第一类:渐变的(Tweened): 淡入淡出(Alpha),旋转(Rotate),移动(Translate),缩放(Sca ...

  7. 使用c++为node.js扩展模块

    官方文档 编写c++代码 // demo.cc #include <node.h> using v8::FunctionCallbackInfo; using v8::Isolate; u ...

  8. MySQL设置密码的三种方法

    其设置密码有三种方法: a. ./mysqladmin -u root -p oldpassword newpasswd(记住这个命令是在/usr/local/mysql/bin中外部命令) b. S ...

  9. 第十五篇:流迭代器 + 算法灵活控制IO流

    前言 标准算法配合迭代器使用太美妙了,使我们对容器(数据)的处理更加得心应手.那么,能不能对IO流也使用标准算法呢?有人认为不能,他们说因为IO流不是容器,没有迭代器,故无法使用标准算法.他们错了,错 ...

  10. bnuoj 34990(后缀数组 或 hash+二分)

    后缀数组倍增算法超时,听说用3DC可以勉强过,不愿写了,直接用hash+二分求出log(n)的时间查询两个字符串之间的任意两个位置的最长前缀. 我自己在想hash的时候一直在考虑hash成数值时MOD ...