栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python题库--简单

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python题库--简单

案例1:输出1-100的数字
# 方法1:
n=1         # 定义变量保存起始的数字
while n<=100:
    print(n)
    n+=1  

# 方法2:    
for num in range(1,101):
    print(num)


# 方法3:
n=100         # 定义变量保存起始的数字
while n>=0:
    print(n)
    n-=1  
   
案例2:编程实现,让用户输入一个整数n,打印输出n以内的全部大于0的偶数(不包含n)
# 方法1:
# 让用户输入一个数字
userInput=int(input("请输入一个整数"))
# 通过range直接生成偶数
for num in range(2,userInput+1,2):
    print(num)
    
# 方法2:
n = int(input("请输入整数:"))
num = 1
while num0:
    if num%2 == 0:
        # 打印数字
        print(num)
    # 修改num的值,让其自减1【目的是为了将来能结束循环】    
    num -= 1

案例3:编程实现,实现输出 1,2,3,4,5, 7,8,9, 11,12

# 方法1:
i = 0
while i <= 12:
    if i !=6 and i !=10:
        print(i)
    i = i+1
​
# 方法2:   
i = 0
while i < 12:
    i = i + 1
    if i ==6 or i ==10:
        continue
    else:
        print(i)
​
# 方法3:
# 生成1-12的数字
for i in range(1,13):
     # 如果数字是6 或者 10,则立刻开始下一次循环
    if i == 6 or i == 10:
       continue
    print(i)

案例4:编程实现,输出100-50,从大到小,如100,99,98...,到50时再从0循环输出到50,然后结束

# 方法1:用两个独立的循环
m = 100
n = 0
while m>=50:
    print(m)
    m -= 1
while n<=50:
    print(n)
    n += 1
    
    
# 方法2:用一个循环 
m = 100         # 定义变量m,用于定义输出100~50之间的数
n = 0           # 定义变量n,用于实现while的循环控制,并输出0-50之间的数
# 开始循环
while n<=50:
    if m>=50:
        print(m)
    else:
        print(n)
        n+=1
    m -= 1  

# 方法3:
for n in range(100,49,-1):
    print(n)                    # 输出100-50的数字
for m in range(51):
    print(m)                    # 输出0-50的数字

案例5:编程实现,实现输出 1-100 内的所有奇数

# 方法1:用range实现
for n in range(1,101,2):
    print(n)
​
# 方法2:用while结合break
n = 1
while True:
    if n%2 == 1:
        print(n)
    elif n>=101:
        break
    n += 1
​
# 方法3:用while
n = 1
while n<101:
    if n%2 == 1:
        print(n)
    n += 1
求和

案例1:计算1+2+3...100

#方法1:
sum = 0             # 定义一个空变量,用于保存计算求和的结果
num = 1             # 定义变量保存起始的数字
while num <= 100:
    sum = sum + num
    num = num + 1
print(sum)


#方法2:
for n in range(101)
    print(n)

案例2:用程序计算100以内有多少个3的整数倍数字

# 方法1 
sum = 0
for num in range(3,100,3):
    sum += 1
print(sum)
​
# 方法2 
sum = 0
for num in range(1,101):
    if num%3 == 0:
        sum += 1
print(sum)
​
# 方法3 
sum = 0
n=1
while n<100:
    if n%3 == 0:
        sum +=1
    n += 1
print(sum)
​
# 方法4 
sum = 0
n=1
while True:
    if n == 100:
        break
    elif n%3 == 0:
        sum +=1
    n += 1
print(sum)

案例3:计算1-100的偶数和

#方法1:
sum = 0             # 定义一个空变量,用于保存计算求和的结果
num = 1             # 定义变量保存起始的数字
while num <= 100:
    if num%2 == 0:
        sum = sum + num
    num = num + 1
print(sum)


#方法2:
for n in range(2,101,2)
    print(n)

案例4:编程实现,使用while循环实现输出2-3+4-5+6-7+8-9+10 的和

# 方法1:
sum1 = 0   # 定义变量保存2 4 6 8 10的和
sum2 = 0   # 定义变量保存3 5 7 9的和

# 计算2 4 6 8 10的和
for m in range(2,11,2):
    sum1 += m

# 计算3 5 7 9的和
for n in range(3,10,2):
    sum2 += n

# 计算2-3+4-5+6-7+8-9+10,也就是计算(2+4+6+8+10) -(3+5+7+9)
res = sum1 - sum2
print(res)

# 方法2:
n = 2
sum1 = 0
sum2 = 0
while n <= 10 :
    if n%2 == 0:
        sum1 += n
    elif n%2 == 1:
        sum2 += n
    n = n + 1
    sum = sum1 - sum2 
print(sum)

案例5:编程实现,使用while循环实现输出1+2+3-4+5+6+7-8.....100 的和

# 方法1:
sum1 = 0
sum2 = 0
for num in range(101):
	sum1 += num
for num in range(4,101,4):
	sum2 += num
res = sum1 - sum2*2
print(res)

# 方法2:
sum1 = 0
sum2 = 0
for num in range(101):
    if  num%4 != 0:
        sum1 += num
for num in range(4,101,4):
	sum2 += num
res = sum1 - sum2
print(res)

# 方法3:
sum1 = 0
sum2 = 0
num = 0
while num <= 100 :
    if num%4 != 0:
        sum1 += num
    num = num + 1
for num in range(4,101,4):
    sum2 += num
sum = sum1 - sum2
print(sum)
print(sum1)
判断

案例1:编程实现,让用户输入三个整数,要求打印输出最大的和最小的数字

# 方法1:
# 让用户输入一个数字
num = int(input("请输入一个数字:"))
min = num    # min中需要存储的是最小的数
max = num    # max中需要存储的是最大的数
for num1 in range(1,3)
    # 让用户输入一个数字
    num1 = int(input("请输入一个数字:"))
    if max < num1:
        max = num1
    if min > num1:
        min = num1
print("最小的是%d, 最大的是%d" %(min,max))
print(max,min)

# 方法2:
list=[]
n=0
while n<=2:
    num1 = int(input("请输入一个数字:"))
    list.append(num1)
    n += 1
print("最小的是:",max(list), "最大的是",min(list))

# 方法3:
# 定义空列表
list = []
# 通过for循环,让用户输入三个数字,并依次加入到列表中
for num in range(1,4):
    userInput = input("请输入数字: ")
    list.append(int(userInput))
# 输出列表中的所有的数
print(list)
# 输出列表中的最大的数
print(max(list))
# 输出列表中的最小的数
print(min(list))

案例2:编程实现,让用户输入一个字符串:判断您输入的字符串分别有几个字符'a'和'b'

userInput = input("请输入一句话: ")
m=0
n=0
for char in userInput:
    if char == 'a':
        m += 1
    elif char == 'b':
        n += 1
print("a的个数%d  b的个数%d" %(m,n))

案例3:重复让用户输入一个单词,直到用户输入bye才退出,统计一下,用户一共输入了多少个单词'

# 方法1
import sys
n = 0
while True:
    userInput = input("请输入:")
    if userInput = "bye":
        print("您一共输入了%d个单词"%(n))
        sys.exit(0)
	else:
        n+=1
        
# 方法2:
n = 0
while True:
    userInput = input("请输入:")
    if userInput == "bye":
        print("您一共输入了%d个单词"%(n+1))
        break
	else:
        n+=1
        
# 方法3:
n = 1
userInput = input("请输入:")
while userInput != "bye":
    n +=1
    userInput = input("请输入:")
else:
    print("你一共输入了%d个单词" %n)

案例3:判断用户输入的内容中是否有c?

如果有,就提示有c,并终止程序

如果没有,就提示无c,并要求用户重新输入,而且最多输入3次

# 方法1:
n = 1
while n<=3:
    userInput = input("请输入一些一段字符:")
    n += 1
    for char in userInput:
        if char=="c":
            print("存在c")
            n = 4
            break    #只可以跳出一层循环
    else:
        print("没有c,请重新输入")

# 方法2:
n = 1
while True:
    if n>3:
        break
    n += 1
    userInput = input("请输入一段字符:")
    if "c" in userInput :
        print("存在c")
        break    #只可以跳出一层循环
    else:
        print("没有c,请重新输入")
 
# 方法3:
for n in range(3):
    num = input("请输入一些一段字符")
    if "c" in num:
        print("存在c")
        break
    else:
        print("无c")

 案例4:编程实现,将字符串abc123转换成321cba

# 方法1:
s = "abc123"
s= reversed(s)
for var in s:
    print(var,end="")
print()

# 方法2
s = "abc123"
s= reversed(s)
li = list(s)
s = "".join(li)
print(s)

# 方法3
s = "abc123"
li = list(s)
li.reverse()
s = "".join(li)
print(s)

# 方法4
s1 = ""
s = "abc123"
li = list(s)
s1 += li.pop()
s = s1
print(s)

# 方法5
s = "abc123"
l =len(s)
n=-1
for i in range(l):
    print(s[n],end="")
    n -= 1
print("")

图像效果

案例1:九九乘法表:

# 方法1:
i= 1
while i <= 9:
    j = 1
    while j <= i:
        print("%d*%d=%d" %(j,i,i*j),end=' ')
        j += 1
    print()
    i += 1 

# 方法2:    
for i in range(1,10):
    for j in range(1,i+1):
        print("%d*%d=%d" %(i,j,i*j),end=' ')
        print()

# 方法3:        
for n in range(1,10):
    for m in range(1,10):
        if m <= n:
            print("%d*%d=%d"%(m,n,m*n),end=" ")
        else:
            print("")
            break

案例2:编程实现,用程序打印效果:

*
**
***
****
***
**
*
# 方法1:
n=1
m=4
while n<=5:
    print("*"*n)
    n+=1
while m>=1:
    print("*"*m)
    m-=1
    
# 方法2:    
for i in range(9):
    print("*"*i)
for a in range(9,0,-1):
    print("*"*a)   

# 方法3  
m = 1
n = 4
while True:
    if m <= 5:
        print("*"*m)
    elif n>=1:
        print("*"*n)
        n -= 1
    else:
        break
    m += 1    

案例3:编程实现,用程序打印效果:

    *
   **
  ***
 ****
*****
 ****
  ***
   **
    *
方法1:
m=5
j=1
for n in range(1,6):
    print(" "*(m-1), end="")
    print("*"*n)
    m-=1
for i in range(5,0,-1):
    print(" "*j, end="")
    print("*"*(i-1))
    j+=1

方法2:
m = 5
n = 1
while n <= 5:
    print(" " * (m - 1), end="")
    print("*" * n)
    n += 1
    m -= 1
i = 4
j = 1
while i >= 1:
    print(" " * j, end="")
    print("*" * i)
    j += 1
    i -= 1
  
# 方法3:
start_num = 1
start_num_bottom = 4
for num in range(1,10):
    if num<=5:
        print(" "*(5-start_num),end="")
        print("*"*(start_num))
        start_num += 1
    else:
        print(" "*(5-start_num_bottom),end="")
        print("*"*(start_num_bottom))
        start_num_bottom -= 1

案例4:编程实现,让用户输入行数和高度,打印一个矩形方框:

##########
#        #
#        #
#        #
##########


# 方法1:
w = int(input("请输入整数:"))
h = int(input("请输入整数:"))
for i in range(w):
    for j in range(h):
        if i == 0 or i ==w-1 or j == 0 or j ==h-1:
            print('#', end='')
        else:
            print(' ',end='')
    print()
    
# 方法2:
height = int(input("请输入高度:"))
weidth = int(input("请输入宽度:"))
n = 1
while n<=height:
    if n == 1 or n == height:
        print("#"*weidth)
    elif n>1 and n 

案例5:编程实现,实心等腰三角形:

# 方法1:
n = int(input("请输入要打印的行数"))
i = 1
while i <= n:
    j = 1
    while j <= n-i:
        print(" ",end="")      # 打印n-i个空格
        j += 1
    k = 1
    while k <= 2*i-1:
        print("*",end="")      # 打印2i-1个星号
        k += 1
    print("")      # 换行
    i += 1
    
# 方法2:
for i in range(1,5):  # 等腰三角形
    for j in range(1,5-i):
        print(' ', end=' ')
    for k in range(2*i-1):
        print('*', end=' ')
    print()

案例6:编程实现,空心等腰三角形:

n = int(input("请输入要打印的行数"))
i = 1
while i <= n:
    j = 1
    while j <= n - i:
        print(" ",end="")      # 打印n-i个空格
        j += 1
    k = 1
    while k <= 2*i-1:
        if k == 1 or k == 2*i-1 or i == n:      # 当k等于1或2i-1(第一个或最后一个)或i等于n(最后一行)时打印星号
            print("*",end="")
        else:
            print(" ",end="")      # 否则打印空格
        k += 1
    print("")
    i += 1

python应用实际

案例1:编程实现,一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高

# 方法1:
print(100*0.5**10)
sum = 0
for num in range(0,10):
    n = num + 1
    sum = sum + 100*0.5**num + 100*0.5**n
print(sum)    

# 方法2:
sum = 0
h = 100
for num in range(1,4):
    if num == 1:
	sum = h + sum
    else:
        sum = h*2 + sum
    h = h*0.5
print(sum)

案例2:编程实现,实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次

# 方法1 
n = 1
while True:
    # 判断用户是否已经输入了三次
    if n > 3:
        print("你已经输入了3次,再见")
        break
        
    # 如果不到三次,就让n加1
    n += 1
    
    # 让用户输入,并判断
    uName = input("用户名: ")
    uPass = input("密  码: ")
    if uName == "alex" or uName == "seven":
        if uPass == "123":
            print("登录成功")
            break
        else:
            print("登录失败")
    else:
        print("登录失败")


# 方法2 
n = 1
while n<=3:
    # 如果不到三次,就让n加1
    n += 1

    # 让用户输入,并判断
    uName = input("用户名: ")
    uPass = input("密  码: ")
    if uName == "alex" or uName == "seven":
        if uPass == "123":
            print("登录成功")
            break
        else:
            print("登录失败")
    else:
        print("登录失败")
        
        
# 方法3
n = 1
while n<=3:
    # 如果不到三次,就让n加1
    n += 1

    # 让用户输入,并判断
    uName = input("用户名: ")
    uPass = input("密  码: ")
    if (uName == "alex" and  uPass == "123") or (uName == "seven" and  uPass == "123"):
        print("登录成功")
    else:
        print("登录失败")     
        
# 方法4     
n = 1
nameList = ["seven","alex"]
while n<=3:
    # 如果不到三次,就让n加1
    n += 1

    # 让用户输入,并判断
    uName = input("用户名: ")
    uPass = input("密  码: ")

    # 判断用户名是否存在
    if uName in nameList:
        # 判断密码是正确
        if uPass == "123":
            print("登录成功")
            break
        else:
            print("登录失败")
    else:
         print("登录失败")   
案例3:

让用户输入账户余额

自动打印商品名称和价格,

判断余额:

       如果余额不足,则提示,并退出

       同时计算余额是否可以购买至少一个产品,让用户输入产品编号和数量

要求可以实现在买了一个产品后可以继续购买其他产品

# 方法1:
money = int(input("请输入你有多少钱:"))
priceList = [10.5,20.3,5.2]
print("1. 足球:10.5")
print("2. 篮球:20.3")
print("3. 排球:5.2")
print("q. 退出购买")
zongjiage = 0
while True:
    if money < min(priceList):
        print("真穷,再见")
        break
​
    choice = input("请选择商品:")
    nums = int(input("请输入数量:"))
    if choice == "q":
        print("再见")
        break
    elif choice == "1":
        zongjiage = 10.5 * nums
    elif choice == "2":
        zongjiage = 20.3 * nums
    elif choice == "3":
        zongjiage = 5.2 * nums
    else:
        print("输入错误,没有这个商品,请重新输入")
        continue
​
    if money >= zongjiage:
        print("购买成功")
        money = money - zongjiage
        print("余额是%f"%(money))
    else:
        print("你的钱不够")
        break
# 方法2:
import sys
userInput = float(input("输入账户余额: "))
price = ["", 4.8 , 3.8 , 2 , 4288]
while True:
    if userInput >= price[3]:
        print("*" * 30, "n""商品1.瓜子:4.8元""n""商品2.花生:3.8""n""商品3.矿泉水:2元""n""商品4.3060显卡:4288元")
        print("*" * 30)
        commodity_number = input("输入商品编号(输入q退出):")
        commodity_number1 = input("请输入商品数量(输入q退出):")
        if  commodity_number == "q" or commodity_number1 == "Q":
            print("欢迎下次光临")
            sys.exit()
        elif float(commodity_number) < 1 or float(commodity_number) > 4:
            print("没有该件商品")
            continue
        elif price[int(commodity_number)]*(float(commodity_number1)) > userInput:
            print("您的余额不足以购买此商品")
            continue
        else:
            print("购买成功!")
            userInput = userInput - float(commodity_number1) * price[int(commodity_number)]
            userInput_1 = input("余额还有%.2f,是否继续购买Y|N:"%(userInput))
            if userInput_1 == "y" or userInput_1 == "Y":
                continue
            if userInput_1 == "N" or userInput_1 == "n":
               print("欢迎下次光临")
               sys.exit()
    else:
        print("余额不足够购买任意商品")
        sys.exit(1)

案例4:

让用户输入个人基本信息,包括 姓名、电话、住址、年龄,通过字典保存用户的数据信息,当用户输入q的时候,结束输入

结束输入后,打印显示全部的用户名,并要求选择一个名称

然后打印输出这个用户的全部信息,输出信息的格式:用户 xxx,电话是xxx,地址是xxx,年龄是xxx

import sys
d1 = {}
li = []
while True:
    name = input("请输入姓名或者按Q退出:")
    name = name.lower()
    if name == "q":
        break
​
    phoneNum = input("请输入电话: ")
    userAge = input("请输入年龄: ")
    homeAddr = input("请输入地址: ")
​
    d1[name] = {"tel":phoneNum, "addr":homeAddr ,"age":userAge}
    li.append(name)
​
n = 1
print("================请根据菜单选择姓名=====================")
for uname in li:
    print("%d %s"%(n,uname))
    n += 1
​
print("输入q退出:")
userInput = input("请选择:")
​
if userInput == "q":
    sys.exit(0)
​
userInput = int(userInput)
​
uname = li[userInput - 1]
​
age = d1[uname]["age"]
addr = d1[uname]["addr"]
tel = d1[uname]["tel"]
​
print("用户%s,电话是%s,地址是%s,年龄是%s"%(uname,tel,addr,age))

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/769500.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号