每日一题4.22:

1.删除list 里面的重复元素 并保持顺序不变化,例 [1,2,4,2,4,3] 变成 [1,2,4,3]

思路分析:

通过以下步骤来删除列表中的重复元素并保持顺序不变:

1. 创建一个空列表(比如result),用于存储唯一的元素。

2. 遍历原始列表,将每个元素添加到result列表中,但只有当该元素不在result中才添加。

3. 最终result列表中的元素即为去除重复的元素后保持原始顺序的结果。

代码实现:

def remove_duplicates(lst):

result = []

for ele in lst:

     if ele not in result:

        result.append(ele)

        return result

original_list = [1, 2, 4, 2, 4, 3]
unique_list = remove_duplicates(original_list)
print(unique_list)

2.给定一个纯英文字母组成的单词,我们的任务就是找出其中处在中间位置的字符。如果单词长度为基数,则返回正中位置的单个字符;如果单词长度为偶数,则返回中间的2个字符。

示例:
输入:testing,输出:t
输入:hogwarts,输出:wa

思路分析:

1. 计算给定单词的长度。

2. 根据单词长度的奇偶性,确定中间位置字符或字符对的位置。

- 如果单词长度为奇数,中间位置字符的索引为长度除以2(向下取整)。

- 如果单词长度为偶数,中间位置字符对的索引为长度除以2(向下取整)和长度除以2加1。

3. 提取中间位置的字符或字符对,并返回结果。

代码实现:
def find_middle_characters(word):
    length = len(word)
    if length % 2 == 1:  # 奇数长度
        middle = word[length // 2]
    else:  # 偶数长度
        middle = word[length // 2 - 1:length // 2 + 1]
    return middle

# 测试示例
print(find_middle_characters("testing"))  # 输出:t
print(find_middle_characters("hogwarts"))  # 输出:wa

3.给定3个正整数a,b,c分别表示三角形的边长,请编写一个函数,判断给定的条件是否能够构成一个有效的三角形。如果能则返回True,否则返回False。

备注:有效的三角形需要满足的条件是“任意两条边长之和大于第三边”。

示例:
输入:a=7, b=10, c=5,返回:True
输入:a=1, b=10, c=12,返回:False

思路分析:

1. 首先检查是否三个边长中存在非正数,若存在则直接返回False。

2. 然后判断三角形三边的长度是否满足任意两条边长之和大于第三边的条件。

3. 若满足上述条件,返回True,表示可以构成有效的三角形;否则返回False。

代码实现:

def is_valid_triangle(a, b, c):
    if a <= 0 or b <= 0 or c <= 0:  # 检查是否存在非正数
        return False
    if a + b > c and a + c > b and b + c > a:  # 判断是否满足三角形条件
        return True
    else:
        return False

# 测试示例
print(is_valid_triangle(7, 10, 5))  # 返回 True
print(is_valid_triangle(1, 10, 12))  # 返回 False

3.给定一段英文文本(单词间都是空格分隔),请编写一个函数,将每个单词的首字母转成大写。

def to_capital(words): # your codes

示例:

输入:"hogwarts school of witchcraft and wizardry"

输出:"Hogwarts School Of Witchcraft And Wizardry"

1. 首先将输入的文本分割成单词列表。

2. 对于每个单词,将其首字母转成大写,保持其他字母不变。

3. 将处理后的单词重新组合成一个字符串。

4. 返回转换后的文本。

代码实现:

def to_capital(words):
    word_list = words.split()  # 将文本分割成单词列表

    result = []
    for word in word_list:
        capitalized_word = word.capitalize()  # 转换首字母为大写
        result.append(capitalized_word)

    return ' '.join(result)

# 测试示例
input_text = "hogwarts school of witchcraft and wizardry"
output_text = to_capital(input_text)
print(output_text)  # 输出 "Hogwarts School Of Witchcraft And Wizardry"
 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值