python习题

#习题1
#a:实现用户输入用户名和密码,当用户名为seven且密码为123时,显示登录成功,否则登录失败!
while 1:
    name = input(‘请输入用户名: ‘)
    psw = input(‘请输入密码: ‘)
    if name == ‘seven‘ and psw == ‘123‘:
        print(‘登陆成功‘)
        break
    else:
        print(‘登陆失败‘)
        break
#b实现用户输入用户名和密码,当用户名为seven且密码为123时,显示登录成功,否则登录失败,失败时允许重复输入三次
count=1
while count <= 3:
    name = input(‘请输入用户名: ‘)
    psw = input(‘请输入密码: ‘)
    if name == ‘seven‘ and psw == ‘123‘:
        print(‘登陆成功‘)
        break
    else:
        print(‘登录失败‘)
        count+=1
        continue
#c实现用户输入用户名和密码,当用户名为seven或alex且密码为123时,显示登录成功,否则登录失败,失败时允许重复输入三次
count=1
while count <= 3:
    name = input(‘请输入用户名: ‘)
    psw = input(‘请输入密码: ‘)
    if name == ‘seven‘ and psw == ‘123‘:
        print(‘登陆成功‘)
        break
    elif name == ‘alex‘ and psw == ‘123‘:
        print(‘登陆成功‘)
        break
    else:
        print(‘登录失败‘)
        count+=1
        continue

#习题2
#a使用while循环实现输出2-3+4-5+6...+100的和
res=0
count=2
while count <= 100:
    if count%2 == 1:
        res-=count
    else:
        res+=count
    count+=1
print(res)
#b使用for循环和range实现输出1-2+3-4+5-6...+99的和
res=0
for i in range(1,100):
    if i%2== 1:
        res+=i
    else:
        res-=i
    i+=1
print(res)

#c使用while循环实现输出1,2,3,4,5   7,8,9  11,12
res=1
while res <=12:
    if res == 6 or res ==10:
        res+=1
        continue
    print(res)
    res+=1
#d使用while循环实现输出1-100内的所有奇数
res=1
while res <= 100:
    if res%2 == 1:
        print(res)
    else:
        res+=1
        continue
    res+=1
#e使用while循环实现输出1-100内的所有偶数
res=1
while res <=100:
    if res%2 == 0:
        print(res)
    else:
        res+=1
        continue
    res+=1
#练习三
#a移除name变量对应的值的两边的空格,并输入移除有的内容
# name=‘alex‘
# print(name.strip())
#b判断name变量对应的值是否以"al"开头,并输出结果
# name=‘alex‘
# print(name.startswith(‘al‘))  #True
#c判断name变量对应的值是否以"x"结尾,并输出结果
# name=‘alex‘
# print(name.endswith(‘x‘))       #True
#d将name变量对应的值中的"l"替换为"p",并输出结果
# name=‘alex‘
# print(name.replace(‘l‘,‘p‘))
# e.将name变量对应的值根据"l"分割,并输出结果
# name=‘alex‘
# print(name.split(‘l‘))
# f.请问,上一题e分割之后得到的值是什么类型
# name=‘alex‘
# print(type(name.split(‘l‘)))
# g.将name变量对应的值变大写,并输出结果
# name=‘alex‘
# print(name.upper())
# h.将name变量对应的值变大小写,并输出结果
# name=‘alex,ALex‘
# print(name.upper())
# print(name.lower())
# i.请输出name变量对应的值的第2个字符?
# name=‘alex‘
# print(name[1])
# j.请输出name变量对应的值的前3个字符?
# name=‘alex‘
# print(name[0:3])
# k.请输出name变量对应的值的后2个字符?
# name=‘alex‘
# print(name[-2:])
# l.请输出name变量对应的值中"e"所在的索引位置?
# name=‘alex‘
# print(name.find(‘e‘))

#练习四:写代码,有如下列表,按照要求实现每一个功能
# li = [‘alex‘,‘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个元素,并输出删除元素后的列表
li = [‘alex‘,‘eric‘,‘rain‘,‘lina‘]
del li[1:5]
print(li)

# i.请将列表所有的元素反转,并输出反转后的列表
li.reverse()
print(li)

#*竖三角形
l=‘*‘
for i in range(1,10):
    print(i*l)

#*倒竖三角
#方法1
l=‘*‘
i=9
while i > 0:
    print(i*l)
    i-=1
#方法2
for i in range(1,12):
    for j in range(1,12-i):
        print(‘*‘,end=‘‘)
    print()
#取出列表中的名字,年龄,出生的年,月,日
data=[‘alex‘,49,[1900,3,18]]
print(data[0],data[1],data[2][0],data[2][1],data[2][2])

#去掉重复
names=[‘egon‘,‘alex‘,‘egon‘,‘wupeiqi‘]
print(list(set(names)))

#去掉重复,且保证列表顺序与原来保持一致
names=[‘egon‘,‘alex‘,‘egon‘,‘wupeiqi‘]
res=[]
for i in names:
    if i not in res:
        res.append(i)
    print(res)

#去掉重复,且保证列表顺序与原来保持一致
names=[[1,2],3,[1,2],4]
res=[]
for i in names:
    if i not in res:
        res.append(i)
        print(res)

#统计s=‘hello alex alex say hello sb sb‘中每个单词的个数
s=‘hello alex alex say hello sb sb‘
l=(list(s.split(‘ ‘)))
s1=set(l)
for i in s1:
    print(i,l.count(i))

#练习一:
# if True or False and False:
#     print(‘yes‘)
# else:
#     print(‘no‘)
#输出结果为?为什么?
# 输出结果为yes,因为 False and False = False,True or False = True

# if (True or False) and False:
#     print(‘yes‘)
# else:
#     print(‘no‘)
#输出结果为?为什么?
# 输出结果为no,因为 True or False = True , True and False = False

#练习二:编写if多分支,猜老男孩的年纪
oldbpy_age=67
while True:
    age=input(‘请输入老男孩的年纪: ‘)
    age=int(age)
    if age == oldbpy_age:
        print(‘恭喜你猜对了‘)
        break
    elif age < oldbpy_age:
        print(‘猜小了,傻逼‘)
        continue
    else:
        print(‘猜大了傻逼‘)
#练习三:用户输入用户名密码验证,验证通过后进入子循环,输入命令,命令若为q,则退出所有循环
tag=True
while tag:
    name = input(‘请输入用户名: ‘)
    psw = input(‘请输入密码: ‘)
    if name == ‘sam‘ and psw == ‘123‘:
        print(‘登陆成功‘)
    else:
        print(‘请重新输入: ‘)
        continue
    while tag:
        cmd = input(‘请输入命令(q退出): ‘)
        if cmd ==‘q‘:
            tag = False
        else:
            print(‘输入的命令为: ‘,cmd)
            continue

#练习四:循环取出元组中所有元素:方式一:while和for(按照索引),方式二:不按照索引的方式
t=(1,2,3,4,5,6,7,8,9)
s=0
while s < len(t):
    print(t[s])
    s+=1

t=(1,2,3,4,5,6,7,8,9)
for i in t:
    print(t[i-1])

# # 方式二、
for i in t:
    print(i)

#练习五:循环读取列表以及子列表中所有元素
l=[1,2,[3,4],[5,6]]
for i in l:
   # print(i)
    if type(i) == list:
        for j in i:
            print(j)
    else:
        print(i)

#练习六:打印
‘‘‘
   *
  ***
 *****
*******
‘‘‘
l=‘*‘
for j in range(1,8,2):
    l1 = j*l
    print(l1.center(7,‘ ‘))

#练习七:打印
‘‘‘
 *****
  ***
   *
‘‘‘
l=‘*‘
l1=6
for i in range(1,6,2):
    l2=(6-i)*l
    print(l2.center(5,‘ ‘))

#练习八:打印
‘‘‘
*
**
***
****
*****
‘‘‘
l=‘*‘
for i in range(1,6):
    l1=i*l
    print(l1.ljust(5,‘ ‘))
#练习九:打印
‘‘‘
******
*****
****
***
**
*
‘‘‘
for i in range(1,7):
    for j in range(1,8-i):
        print(‘*‘,end=‘‘)
    print()
#练习十:编写登陆接口
# 基础需求:
# 让用户输入用户名密码
# 认证成功后显示欢迎信息
# 输错三次后退出程序
res=1
while res<=3:
    name=input(‘请输入用户名: ‘)
    psw = input(‘请输入密码: ‘)
    if name == ‘sam‘ and psw == ‘123‘:
        print(‘登陆成功‘)
        break
    else:
        print(‘登陆失败,请重新登录‘)
        res+=1
        continue
#数据类型练习题:
练习一:有十进制数n=10
转成二进制
转成八进制
转成十六进制
n=10
print(bin(n))   #二进制
print(oct(n))   #八进制
print(hex(n))   #十六进制

#练习二:与用户交互,要求用户输入年龄和薪资,将用户输入的年龄转成整形,将用户输入的薪资转成浮点型
res =1
while res <2 :
    nl=input(‘请输入年龄: ‘)
    nl=int(nl)
    xz=input(‘请输入薪资: ‘)
    xz=float(xz)
    print(type(nl))
    print(type(xz))
    res+=1

#练习三:
‘‘‘
用户输入用户名,年纪,工作,爱好,格式化输出如下内容(使用%s和format两种方式)
------------ info of Alex Li -----------
Name  : Alex Li
Age   : 22
job   : Teacher
Hobbie: girl
------------- end -----------------
‘‘‘
# 方式一
l=‘Name:{},Age:{},Job:{},Hobbie:{}‘
for i in range(1,2):
    name=input(‘请输入用户名: ‘)
    age=input(‘请输入年纪: ‘)
    job=input(‘请输入工作: ‘)
    hobbie=input(‘请输入爱好: ‘)
    # l=l.format(name,age,job,hobbie)
    print(name.center(30,‘-‘))
    print(‘Name: %s\nAge: %s\nJob: %s\nHobbie: %s‘%(name,age,job,hobbie))
    e=‘end‘
    print(e.center(30,‘-‘))
#方式二
l=‘Name:{z},Age:{x},Job:{c},Hobbie:{v}‘
e=‘end‘
name=input(‘请输入用户名: ‘)
age=input(‘请输入年纪: ‘)
job=input(‘请输入工作: ‘)
hobbie=input(‘请输入爱好: ‘)
l=l.format(z=name,x=age,c=job,v=hobbie)
l1=list(l[0:].split(‘,‘))
print(name.center(30,‘-‘))
for i in l1:
    print(i)
print(e.center(30,‘-‘))
#练习四:
s=‘alex say hello‘
切片取出第say
print(s[5:8])
切片取出倒数后两个字符
print(s[-2:])

#练习五:
# 编写循环,让用户输入年纪,如果输入为空,或者不为数字,则重新输入
while True:
    age = input(‘请输入年纪: ‘)
    if age.isspace() == True or age.isdigit() == False:
        print(‘请重新输入‘)
        continue
    else:
        print(‘您的年纪是:‘,age)
        break

#练习六:
# 用列表模拟上电梯的流程(队列)
#     循环生成一个1000个值的列表(入队)
#     循环取走这个1000个值(出队)
l=[]
for i in range(1,1001):
    l.append(i)
    print(l)
for j in range(1,1001):
    print(l.pop(0))

# 用列表模拟把衣服放箱子里,然后取衣服的流程(堆栈)
#     循环生成一个1000个值的列表(入栈)
#     循环取走这个1000个值(出栈)
l=[]
for i in range(1,1001):
    l.append(i)
    print(l)
for j in range(1,1001):
    print(l.pop())
#练习七:
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}
dictc=dicta
for i in dictb:
    if i in dictc:
        dictc[i]=dictb[i]+dictc[i]
    else:
        dictc[i]=dictb[i]
    print(dictc)
时间: 2024-11-05 22:38:53

python习题的相关文章

笨办法学Python - 习题3: Numbers and Math

Exercise2是注释和井号 Comments and Pound Characters 具体详情请参考习题一,这里就不在做过多的赘述. 习题 3: 数字和数学计算 学习目标:了解Python中常用的算术运算符,并了解运算符之间的先后运算顺序 在各大常用的计算机语言中都有常见的算术运算符,Python也是大同小异,下面我们来了解一下Python中常见的算术运算符: 算术运算符 以下假设变量x = 10 ,y = 20 运算符 描述 实例 + 加 - 两个对象相加 x+y = 30 - 减 -

笨办法学Python - 习题8-10: Printing &amp; Printing, Printing

目录 1.习题 8: 打印,打印 2.习题 9: 打印,打印,打印 3.习题 10: 那是什么? 3.1.转义序列: 4.习题总结: 1.习题 8: 打印,打印 学习目标:继续学习 %r 的格式化输出. 习题八中的练习代码是: #! -*-coding=utf-8 -*- formatter = "%r %r %r %r %r " print formatter % (1, "hello", [1,2,3], (1,2,3), {"name":&

python习题20190130

#encoding=utf-8 ''' 一家商场在降价促销.如果购买金额50-100元(包含50元和100元)之间,会给10%的折扣,如果购买金额大于100元会给20%折扣.编写一程序,询问购买价格,再显示出折扣(10%或20%)和最终价格 ''' def print_zekou(): aount = int(input("请输入你购买的金额:")) if aount < 50: print("不好意思你购买的金额没有折扣,需要支付的金额为:",aount)

python习题练习(chapater 5 -- python核心编程)

更新中... #!/usr/bin/env python# coding: utf-8'for practise in chapater five' #定义一个函数,计算并返回两个数的乘机def product(a, b): return(a * b) #根据分数输出同学的评分成绩(A-F)def score(i): if (i > 90) & (i < 100):  return('A') elif (i > 80) & (i < 89):  return('B'

python--笨方法学python 习题52

笨方法学python是一本不错的python入门书籍.书的最后一节是一个web版的游戏程序,以下是程序代码: 1.项目的目录结构如下所示:skeleton\ app.py map.py templates\ layout.html show_room.html you_died.html 2.游戏地图结构 map.py其中Room类是游戏场景,包括场景名称 name,描述 description,通往下一场景的可能路径集合 paths. 定义了游戏中设计到的7个场景. # -*- coding:

python习题 (1):login

#!/uer/bin/env python # _*_ coding: utf-8 _*_ import sys retry_limit = 3 retry_count = 0 account_file = 'accounts.txt' lock_file = 'account_lock.txt' while retry_count < retry_limit: #循环体限制3次内执行 username = raw_input('\033[32; Username : \033[0m') #输入

笨方法学Python——习题40

之前例子讲过关于字典.列表.字符串.元组,按书中所述,其实这些已经足够写一些代码,但Python属于面向对象的编程语言,本节所讲的类,是必须要掌握的,虽然现在有些懵逼 1 class Song(object): 2 3 def __init__(self, lyrics): 4 self.lyrics = lyrics 5 6 def sing_me_a_song(self): 7 for line in self.lyrics: 8 print line 9 10 happy_bday = S

python习题--列表的遍历

习题一: # 比较两个列表中的元素,找出不相同的元素并保存在列表3中 L1 = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"] L2 = ["Sun", "Mon", "Tue", "Tue", "Thu", &quo

python习题12

ex12 1 age = input("How old are you?") 2 height = input("How tall are you?") 3 weight = input("How much do you weight?") 4 5 print(f"So,you're {age} old, {height} tall and {weight} heavy.") 在终端上键入python -m pydoc inp