基础练习
用三行print,完成以下信息的显示:
==================================
= 欢迎进入到身份认证系统V1.0
= 1. 登录
= 2. 退出
= 3. 认证
= 4. 修改密码
==================================
print("="*50) print("=\t欢迎进入到身份认证系统v1.0\n = 1.登录\n = 2.退出\n = 3.认证\n = 4.修改密码") #\t 是tab print("="*50) ================================================== = 欢迎进入到身份认证系统v1.0 = 1.登录 = 2.退出 = 3.认证 = 4.修改密码 ==================================================
编写程序,从键盘获取一个个信息,然后按照下面格式显示
==================================
姓名: dongGe
QQ:xxxxxxx
手机号:131xxxxxx
公司地址:北京市xxxx
==================================
name = input("请输入你的名字") qq = input("QQ") phone = input("手机") adress = input("公司地址") print("="*50) print("姓名:%s\nQQ:%s\n手机号:%s\n公司地址:%s" %(name,qq,phone,adress)) #利用%s进行转换 print("="*50)
==================================================
姓名:黑
QQ:556
手机号:564654
公司地址:哈
==================================================
编写程序
- 从键盘获取用户名、密码
- 如果用户名和密码都正确(预先设定一个用户名和密码),那么就显示“欢迎登陆xxx”,否则提示密码或者用户名错误
user_name = input("请输入您的用户名: ") passwd = input("请输入您的密码: ") if user_name == "seven" and passwd == "123": #注意用户输入的是字符串 print("欢迎登录xxx") else: print("密码或用户名错误") 请输入您的用户名: seven 请输入您的密码: 123 欢迎登录xxx
请编写1 - 100 所有数的和
1.
print(sum(range(1,101)))
2.
a = 0 for i in range(1,101): #这个range的范围不包括101 a += i print(a) 5050
实现一个整数加法计算器
num = input("请输入您要计算的公式: ") r,l = num.split("+") r = int(r) l = int(l) func = r + l print(func) 请输入您要计算的公式: 8+4 12
如下值集合[11,22,33,44,55,66,77,88,99,90],将所有大于66的值保存至字典的第一个key中,将小于66的值保存至第二个key的值中。 即:{'k1':大于66的所有值,'k2':小于66的所有值} li = [11,22,33,44,55,66,77,88,99,90] li.sort() v = li.index(66) #获得索引位置 比如这里是5 dic = {"key2":li[0:v],"key1":li[v+1:]} #运用切片 所以是分号而不是冒号 print(dic) {'key2': [11, 22, 33, 44, 55], 'key1': [77, 88, 90, 99]}
编写代码,有如下数字 li = [1,2,3,4,5,6,7,8,8] 能组成多少个互不相同且不重复的数字的两位数 li = [1,2,3,4,5,6,7,8,8] #注意题目给的列表有两个8 li2 = [] li3 = [] for i in li: for x in li: #两次for循环分别得到两个数 if i != x: a = "%d%d" %(i,x) li2.append(a) #因为li列表有两个8 所以li2里面分别有两个18,28等等 for i in li2: if i not in li3: #li3的作用就是去除li2里重复的带8的数字 li3.append(i) print(li3) print(len(li3))
输出商品列表,用户输入序号,显示用户选中的商品 商品 商品li=["电脑","显示器",“笔记本”,“机械键盘”] a.允许用户添加商品 b.用户输入序号显示内容 li=["电脑","显示器","笔记本","机械键盘"] for i,v in enumerate(li): #enumerate函数就是得到索引的数字以及值 print(i,v) #向用户展示已有的商品以及序列 print("==请输入要添加的商品==") add_mar = input(">>> ") li.append(add_mar) print("==商品添加成功==") for i,v in enumerate(li): #将用户添加的商品添加到序列 print(i,v) print("==输入要查找的商品==") cho_num = input(">>> ") if cho_num.isdecimal(): #确认用户输入的是否是数字类型字符串 其实if函数就是得到一个bool值 如果Ture则执行... cho_num = int(cho_num) print(li[cho_num]) else: print("==请再次输入==")
编写代码,实现一个判断用户输入的年份是否是闰年的程序 print("==请输入要查询的年份==") year = int(input(">>> ")) if year % 400 == 0 or year % 4 == 0 and year % 100 != 0: print("yeah it is runnian") else: print("not runnian")
实计算用户输入的内容中有几个十进制小数?几个字母? print("==请输入内容==") user_num = input(">>> ") a = 0 b = 0 for i in user_num: if i.isdecimal(): #是否是十进制小数的函数 a += 1 if i.isalpha(): #是否是字母 b += 1 else: pass print("数字一共有%s个,字母一共有%s个" %(a,b))
print("数字一共有",a,"字母一共有",b)
编写程序,统计如下各个字符串个数 string = "hello world god is allways busy" 比如:"hello world" 字符串统计的结果为: h:1 e:1 l:3 o:2 d:1 r:1 w:1 q = "hello world god is allways busy" l = "" for i in "".join(q.split()): #spit的作用是移除字符串中的空格 jion的作用是将分开的字符串合在一起便于循环 if i + ":" + str(q.count(i)) not in l: l += (i + ":" + str(q.count(i))) + " " #小技巧 print(l)
*编写9*9乘法表(有点难理解) for i in range(1,10): for x in range(1,i+1): print("%d * %d = %d\t"%(x,i,i*x),end="") print("")
使用while,完成以下图形的输出 i = 0 s = 4 #这个点是关键 while i <= 9: if i <= 5: print("*"*i) i += 1 else: print("*"*s) s -= 1 i += 1 #i+=1之所在这个位置是执行else之后i也要加1,否则就是一个死循环
编写代码,分页显示内容 通过for循环,创建301条数据,数据类型不限,如: alex-1alex1@live.com1 alex-2alex2@live.com2 alex-3alex3@live.com3 alex-4alex4@live.com4 alex-5alex5@live.com5 提示用户输入要查看的页码,当用户输入指定的页码,则显示指定数据 每页显示10条数据 如果用户输入页码是非十进制数字,则提示内容格式错误,重新输入 li = [] for i in range(311): li.append("alex-%dalex%d@live.com%d" % (i + 1, i + 1, i + 1)) print(li) print(len(li) // 10) #//是除完之后是整数的操作 print("请输入页数") page_num = input(">>> ") if page_num.isdecimal(): page_num = int(page_num) if page_num > 0 and page_num <= len(li) // 10 + 1: for x in li[(page_num - 1) * 10:page_num * 10]: #90页-100页 print(x) else: print("输入超出范围") else: print("输入有误请重新输入")
有如下列表, nums=[2,7,11,15,1,8,7] 请找到列表中任意两个元素相加能够等于9的元素集合,列[(2,7), (1,8)] li = [] nums=[2,7,11,15,1,8,7] for i in nums: for x in nums: if i != x and i + x == 9: #其实i!=x这个条件可以删掉 因为不可能两个重复的数相加等于9 除非是4.5 a = list((i,x)) #小技巧 转化为列表 a.sort() b = tuple(a) #根据题意转为元组 if b not in li: #去重 li.append(b) print(li)