python--练习题巩固(四)

 

# 1、使用尽可能多的方法实现list去重
'''
思路:可利用set唯一性,key唯一性,sort排序;
新建空列表,遍历,判断是否在列表中存在,未存在的添加到集合中
'''

list1 = [1,2,4,7,9,2,4]

#方法一
list2=list(set(list1))
print(list2)

#方法二
list1 = [1,2,4,7,9,2,4]
list2 = []
for i in list1:
    if i not in list2:
        list2.append(i)
print(list2)
# 2、输入三个数,判断是否能构成三角形,能构成三角形三边关系:三边都大于零,两边之和大于第三边,两边之差小于第三边
'''
思路:构成三角形基本条件三边都大于0;a >0 b >0 c > 0 
a+b>c, b+c >a, c+a >b
'''

while 1:
    a,b,c = map(int,input("请输入三个数字,以,分割:").split(","))
    if a>0 and b>0 and c >0:
        if (a+b>c) and (a+c>b) and (b+c>a):
            print("%d,%d,%d能构成三角形!"%(a,b,c))
            break
    else:
        print("%d,%d,%d不能构成三角形!" % (a, b, c))

执行结果:

请输入三个数字,以,分割:1,7,9
请输入三个数字,以,分割:1,5,8
请输入三个数字,以,分割:1,6,5
请输入三个数字,以,分割:3,4,5
3,4,5能构成三角形!

# 3、键盘读入一字符串,逆序输出
'''
思路:1、先转为列表,再拼成字符串
2、反转字符串,[::-1]
3、a.reverse
'''

#第一种:
a = input("请输入一串字符串:")
b = []
new = ""
for i in a:
    b.insert(0,i)
    print(b)

for j in b:
    new += j
print(new)

执行结果:
请输入一串字符串:123qwe
['1']
['2', '1']
['3', '2', '1']
['q', '3', '2', '1']
['w', 'q', '3', '2', '1']
['e', 'w', 'q', '3', '2', '1']
ewq321

#第二种:
a = input(“请输入一串字符串:”)
print(a[::-1])

执行结果:
请输入一串字符串:yominmljj3jh5jh6hh6n@%*njjk1888
8881kjjn*%@n6hh6hj5hj3jjlmnimoy

#第三种:
a = list(input(“请输入一串字符串:”))
a.reverse()
print(”.join(a))

执行结果:
请输入一串字符串:yominmljj3jh5jh6hh6n@%*njjk1888
8881kjjn*%@n6hh6hj5hj3jjlmnimoy

 

posted @ 2021-06-10 20:47  软件开发技术修炼  阅读(36)  评论(0编辑  收藏  举报