python练习

题目1.(合并两个有序列表)编写下面的函数合并两个有序列表构成一个新的有序列表。

def merge(list1,list2):

比照len(list1)+len(list2)实现这个函数。编写测试程序提示用户输入两个有序列表,然后显示合并后的列表。

python代码实现

def merge(list1, list2):
    merged_list = []
    i = j = 0
    while i < len(list1) and j < len(list2):
        if list1[i] < list2[j]:
            merged_list.append(list1[i])
            i += 1
        else:
            merged_list.append(list2[j])
            j += 1
    merged_list.extend(list1[i:])
    merged_list.extend(list2[j:])
    return merged_list
list1 = input("enter list1:").split()
list1 = [int(num) for num in list1]
list2 = input("enter list2:").split()
list2 = [int(num) for num in list2]

merged = merge(list1, list2)
print("the merged list is:", merged)

测试结果显示

题目2:(模式识别:四个连续的相同的数)编写下面的函数测试列表是否具有同样值的四个连续数字。

def isConsecutiveFour(values):

编写测试程序提示用户输入一个整数序列,然后报告这个序列是否包含具有相同值的四个连续数字。

python代码实现 

def isConsecutiveFour(values):
    for i in range(len(values) - 3):
        if values[i] == values[i + 1] == values[i + 2] == values[i + 3]:
            return True
    return False

def main():
    input_str = input("inter list:")
    values = list(map(int, input_str.split()))
    if isConsecutiveFour(values):
        print("输入的序列包含具有相同值的四个连续数字。")
    else:
        print("输入的序列不包含具有相同值的四个连续数字。")
if __name__ == "__main__":
    main()

 测试结果显示

题目3:(统计数字个数)编写程序读取1到100之间的一些整数,并统计每个数字的个数。 

python代码实现

nums = input("Enter integers between 1 and 100:").split()
num_count = {}
for num in nums:
    if int(num) in range(1, 101):
        if num in num_count:
            num_count[num] += 1
        else:
            num_count[num] = 1

for key, value in num_count.items():
    print(key, "occurs", value, "times")

测试结果显示:

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值