python练习题1

45 阅读1分钟

题目1:编写一个函数判断是否为回文串,同时编写测试代码检验回文串。

如果一个字符串从前往后和从后往前读时是一样的,那么这个字符串就是回文串。(例:“aba”是一个回文串, "abab"不是回文串)

提示:使用切片,注意列表索引的使用。

def isHui(string):
    return string == string[::-1]
a = "abaa"
if isHui(a):
    print(a,"是回文串")
else:
    print(a,"不是回文串")

题目2:生成一个包含 20 个随机整数(取值1-100)的列表,然后对其中偶数下标的元素进行降序排列,奇数下标的元素排序不变。

提示:使用切片和 sort 排序函数。

import random
arr = [random.randint(1,100) for i in range(20)]
print("arr",arr)
brr = arr[::-2] # 偶数下标数组
print("brr:",brr)
brr.sort(reverse=True) # 直接对原数组brr进行降序排列
print("降序排列后的brr:",brr)
arr[::2] = brr
print("原数组arr:",arr)

题目3:从键盘输入一个字符串,将小写字母全部转成大写字母,然后将其输出到test.txt文件中保存。

s = input("请输入一个字符串:")
s = s.upper()
print("s:",s)
with open("test.txt","w") as file:
    file.write(s)

题目4:定义一个函数,传入3个整数,要求将其升序排序后输出。

def fun(a,b,c):
    ls = [a,b,c]
    ls.sort()
    for i in ls:
        print(i,end=" ")
fun(10,2,13)