python基础练习题之基础语法篇

if条件语句

使用input函数接收用户的输入,如果用户输入的整数是偶数,则使用print函数输出"你输入的 整数是:{value}, 它是偶数", {value}部分要替换成用户的输入。

# 单个条件分支

value = int(input('请输入一个数字:'))
if value % 2 == 0:
    print('你输入的整数是{value},他是偶数' .format(value=value))
# if···else

value = int(input('请输入一个数字:'))
if value % 2 == 0:
    print('你输入的整数是{value},他是偶数' .format(value=value))
else:
    print('你输入的整数是{value},他是奇数'.format(value=value))

# 需要掌握的是以下几点:
1.input函数的运用
2.字符串类型转为int类型
3.取模运算
4.字符串格式化

# 多条件分支

使用input函数接收用户的输入数据,如果用户输入python,则输出90,如果用户输入java, 输出95,如果用户输入php,输出85,其他输入,程序输出0

value = input('请输入你的数据:')
if value == 'python':
    print('90')
elif value == 'java':
    print('95')
elif value == 'php':
    print('85')
else:
    print('0')

    
# 复杂条件判断
使用input函数接收用户的输入,如果输入的数据不可以转换成int类型数据,则输出写无法使用int函数转换,如果可以,则将用户的输入转成int类型数据并继续判断。# isdigit 判断数据是否是整数
如果输入数据是奇数,则将其乘以2并输出,如果是偶数,则判断是否能被4整除,如果可以 则输出被4整除后的值,若不能被4整数,则判断是否大于20,如果大于20则输出与20的差值,如果小于等于20,则直接输出该值

value = input('请输入数据:')

if not value.isdigit():
    print('无法使用int转换')
else:
    value = int(value)
    if value % 2 != 0:
        print(value * 2)
    elif value % 4 == 0:
        print(value // 4)
    elif value > 20:
        print(value - 20)
    else:
        print(value)

for循环

range函数基本使用

range(3, 20, 4) # 3,7,11,15,19
range(10, -3, -4) # 10 6 2 -2
range(10, 5,-1) # 10,9,8,7,6
range(2, 12) # 2,3,4,5,6,7,8,9,10,11

lst = [1, 3, 5, 2, 7, 9]
for index in range(len(lst)):
    print(lst[index])
    
1.  参照上面的代码,从后向前遍历
lst = [1, 3, 5, 2, 7, 9]
for index in range(len(lst)-1,-1,-1):
    print(lst[index])
    
# len(lst)是6 所以实际上是range(5,-1,-1),从5开始,到-1结束但不包含-1,步长是-1也就是 5,-1=4,3,2,1,0
2.  遍历输出列表里的所有偶数
lst = [1, 3, 5, 2, 7, 9]
for index in range(len(lst)):
    if lst[index] % 2 == 0:
        print(lst[index])
3.  遍历列表,输出大于3的奇数
lst = [1, 3, 5, 2, 7, 9]
for index in range(len(lst)):
    if lst[index] % 2 != 0 and lst[index] > 3:
        print(lst[index])
        

# 遍历字典的两种方法
# 方法一
dic = {
    'python': 90,
    'java': 95
}

for key in dic:
    print(key, dic[key])

# 方法二
dic = {
    'python': 90,
    'java': 95
}
for key,values in dic.items():
    print(key,values)
    
  
# 从列表中寻找一个偶数并输出   使用break中断循环
lst = [1, 3, 5, 2, 7, 9, 10]
for i in lst:
    if i % 2 == 0:
        print(i)
        break
  
# 从列表中寻找最大值和最小值
# 最大值
lst = [3, 6, 1, 8, 1, 9 , 2]
for i in lst:
    if i is max(lst):
        print(i)

lst = [3, 6, 1, 8, 1, 9, 2]
max_value = lst[0]
for item in lst:
    if item > max_value:
        max_value = item
print(max_value)

# 最小值
lst = [3, 6, 1, 8, 1, 9, 2]
for i in lst:
    if i is min(lst):
        print(i)
        break

# 最小偶数
min([i for i in lst if i % 2 == 0])
 
# 最大偶数
max([i for i in lst if i % 2 == 0])

# 寻找组合
lst1 = [3, 6, 1, 8, 1, 9, 2]
lst2 = [3, 1, 2, 6, 4, 8, 7]
for item1 in lst1:
    for item2 in lst2:
        if item1 + item2 == 10:
            print((item1, item2))
上面的代码利用嵌套循环,从两个列表里各取1个数,如果这两个数的和等于10,则以元组的 方式输出这两个数
1.参照上面的代码,寻找两个数的差的绝对值等于2的组合
lst1 = [3, 6, 1, 8, 1, 9, 2]
lst2 = [3, 1, 2, 6, 4, 8, 7]
for i1 in lst1:
	for i2 in lst2:
		if abs(i1 - i2) == 2:
			print((i1,i2))
2.  两个列表里各取出—个值,item1和item2,请计算item1*item2的最大值
lst1 = [3, 6, 1, 8, 1, -999, 2]
lst2 = [3, 1, 2, 6, 4, -888, 7]
lst3=[]
for i1 in lst1:
    for i2 in lst2:
        lst3.append(i1*i2)
print(max(lst3))

while循环

# 使用input函数接收用户输入的整数,如果输入的是偶数,输出'你输入的是一个偶数',反之输出'你输入的是一个奇数'。可以多次输入,知道输入quit时退出程序。
while True:
    i_str = input('请输入一个数字:')
    if i_str == 'quit':
        break
    i = int(i_str)
    if i % 2 == 0:
        print('偶数')
    else:
        print('奇数')
  
'''
已知 lst = [2, 3, 4]
依次要求用户输入2,3,4 的整数倍,先让用户输入2的倍数,如果用户输入的正确,输
出“输入正确”,否则输出 “输入错误”,如果用户输入quit,则停止当前的输入,让用户输入3 的倍数,输入3的倍数的过程中,如果用户输入quit,则让用户输入4的倍数
'''
lst = [2, 3, 4]
for i in lst:
    while True:
        i_str = input('请输入{number}的整数倍,输入quit退出:'.format(number=i))
        if i_str == 'quit':
            break
        number = int(i_str)
        if number % i == 0:
            print('输入正确')
        else:
            print('输入错误')

continue的用法

# break是跳出循环体,continue是跳过continue语句后面的代码块,循环并不停止。
'''
使用input函数接受用户的输入,如果用户输入的数值小于等于10,则判断是奇数还是偶数, 如果数值大于10,则输出“输入大于10,不判断奇偶”,用户输入quit,结束程序
'''
# 不使用continue
while True:
    i_str = input('请输入一个数字,输入quit退出:')
    if i_str == 'quit':
        break
    i = int(i_str)
    if i <= 10:
        if i % 2 == 0:
            print('偶数')
        else:
            print('奇数')
    else:
        print('输入的数字大于10,不判断奇偶')
# 使用continue
while True:
    i_str = input('请输入一个数字,输入quit退出:')
    if i_str == 'quit':
        break
    i = int(i_str)
    if i > 10 :
        print('输入的数字大于10,不判断奇偶')
        continue
    if i % 2 == 0:
        print('偶数')
    else:
        print('奇数')
 
# 对比发现,不使用continue的代码嵌套层次深,让代码变得难以阅读,不宜管理。
# 但使用continue就可以减少代码层次,代码的理解和管理变得更容易,大于10时,直接跳过后面的代码,显得思路更清晰。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值