PythonTip 在线编程 31~40

第三十一题(查找列表最大值) 

def find_highest_number(numbers_list):
    if len(numbers_list) == 1:
        return numbers_list[0]
    if numbers_list[0] > max(numbers_list[1:]):
        return numbers_list[0]   
    else:
        return max(numbers_list[1:])
# 输入数字并转为列表
numbers_list = list(map(int, input().split()))

# 调用函数打印结果
print(find_highest_number(numbers_list))

 第三十二题(求偶数和奇数之和)

def calculate_sum(numbers_list):
    even_sum = 0
    odd_sum = 0
    for i in numbers_list:
        if i % 2 == 0:
            even_sum += i
        else:
            odd_sum += i
    return [even_sum,odd_sum]
# 获取输入转为列表
numbers_list = list(map(int,input().split()))

# 打印偶数和奇数的和
print(calculate_sum(numbers_list))

第三十三题(数字字符串相加) 

 

def add_numbers(num1, num2):
    if num1 == '' or num2 == '' or num1 == 'None' or num2=='None':
        return 'Invalid Operation'
    else:
        sum = int(num1) + int(num2)
        return str(sum)
# 获取用户输入num1 和 num2
num1 = input()
num2 = input()

# 调用函数
result = add_numbers(num1, num2)

# 打印和
print(result)

第三十四题(十六进制转换为二进制)

def hex_to_binary(hex_number):
    return "{:08b}".format(hex_number)

# 获取用户输入的16进制数
hex_number = int(input(), 16)

# 打印转换后的二进制数 
print(hex_to_binary(hex_number))

第三十五题(Harshad数) 

def is_harshad(num):
    num_str = str(num)
    # 计算数字之和
    sum = 0
    for digit in num_str:
        sum += int(digit)
    # 判断是否为Harshad数
    if sum == 0:
        return True
    elif num % sum == 0:
        return True
    else:
        return False
# 获取用户输入
num = int(input())

# 显示输出
print(is_harshad(num))

 第三十六题(字符串是否为标题)

def is_title(sentence):
    words = input_sentence.split(' ')
    for word in words:
        if word[0].islower():
            return False
    return True

# 从用户处获取输入
input_sentence = input()
# 调用函数
print(is_title(input_sentence))

第三十七题(不重复元素的列表) 

def find_unique(lst):
    unique_numbers = []
    for num in lst:
        if num not in unique_numbers:
            unique_numbers.append(num)
    return unique_numbers

# 获取用户输入并转为数字列表
numbers = list(map(int, input().split()))

# 调用函数
print(find_unique(numbers))

第三十八题(双击回文数) 

def check_double_base_palindrome(number):
    # 将整数转换为字符串
    str_n = str(number)

    # 检查十进制是否是回文
    if str_n == str_n[::-1]:
        bin_n = bin(number)[2:]  # 将整数转换为二进制字符串并去掉前缀'0b'
        # 检查二进制是否是回文
        if bin_n == bin_n[::-1]:
            return True
    return False

# 获取用户输入
number = int(input())

# 调用函数
print(check_double_base_palindrome(number))

 第三十九题(查看列表元素索引)

def find_indices(my_list, element):
    return [i for i, x in enumerate(my_list) if x == element]
# split()函数将输入的字符串分割成一个列表
user_input = input().split()
element = input()

# 调用函数 
print(find_indices(user_input, element))

 第四十题(单词相同字符数)

def shared_chars_count(word1, word2):
    # 将两个单词转换为小写,以实现区分大小写的比较
    word1 = word1.lower()
    word2 = word2.lower()

    # 将两个单词转换为字符集合(set)
    set1 = set(word1)
    set2 = set(word2)

    # 计算两个集合的交集,也就是两个单词中都有的字符
    common_chars = len(set1.intersection(set2))

    return common_chars

# 获取输入
word1 = input()
word2 = input()

# 调用函数
print(shared_chars_count(word1, word2))

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小蕊。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值