8道Python极速入门题(上)

第一篇,就以8到入门题开篇吧

1.比如自然数10以下能被3或者5整除的有,3,5,6和9,那么这些数字的和为23.

求能被3或者5整除的1000以内数字的和

"""
1、能被3整除或者能被5整除的数,求和

"""
sum1 = 0

for i in range(1,1001):
    if i % 3==0 or i % 5==0:#能被3或者5整除的数
        sum1 += i            #求和
print(sum1)

2.在一个数组指定数组里面移除指定的数字,并返回新的数组并从大到小排序

比如:

         nums=[1,6,6,3,6,2,10,2,100],remove_num=6

         要求返回时nums=[1, 2, 3, 10, 100]

# nums=[1,6,6,3,6,2,10,2,100],remove_num=6

# 要求返回时nums=[1, 2, 3, 10, 100]

nums=[1,6,6,3,6,2,10,2,100]
while 6 in nums:
    nums.remove(6)
    nums.sort(reverse=True)
print(nums)

3.从排序好的任意数组列表里面删除重复元素(你不知道列表里面有多少个重逢的元素)

比如:

        nums=[1,3,3,5,5,8,10,10,100,100],处理完之后是:[1, 3, 5, 8, 10, 100]

        nums=[1,3,3,5,5,8,10,10,100,100]

 1 # 从排序好的任意数组列表里面删除重复元素(你不知道列表里面有多少个重逢的元素)
 2 # nums=[1,3,3,5,5,8,10,10,100,100],处理完之后是:[1, 3, 5, 8, 10, 100]方法一:
 3 nums=[1,3,3,5,5,8,10,10,100,100]
 4 lis = []
 5 for i in nums:
 6     if i not in lis:
 7         lis.append(i)
 8 nums = lis
 9 print(nums)
10 
11 方法二:
12 nums=[1,3,3,5,5,8,10,10,100,100]
13 for i in nums:
14   while nums.count(i) >1:
15     nums.remove(i)
16 print(nums)

4.从排好序的数组里面,删除重复的元素.重复的数字最多只能出现2次

nums=[1,1,1,2,2,3]

要求返回nums=[1,1,2,2,3]

1 # 方法一:
2 lis = []
3 nums=[1,1,1,2,2,3]
4 for i in nums:
5     if  lis.count(i) < 2:
6         lis.append(i)
7 nums = lis
8 print(nums)
# 方法二:

nums=[1,1,1,2,2,3]
for i in nums:
    while nums.count(i)>2:
        nums.remove(i)
print(nums)

 


posted on 2018-10-29 16:35  ntboy  阅读(318)  评论(0)    收藏  举报

导航