Python算法(初级)

1.请计算 2.5 + 10 / 4 ,并解释计算结果为什么不是期望的 5.0 ?

def fun8():
  print(2.5 +10.0 /4)

2.假设新来一名学生Paul,Paul 同学的成绩比Bart好,但是比Lisa差,他应该排到第三名的位置,请用代码实现。

def fun11():
  L = ["Adam", "Lisa", "Bart"]
  L.insert(2,"Peter");
  print(L)

3.创建一个tuple,顺序包含0 - 9这10个数(元组tuple不能改变)

def fun13():
  tuple = ("0","1","2","3","4","5","6","7","8","9")
  tuple[0] ="1" #不支持分配/改动
  print(tuple)

4.如果成绩达到60分或以上,视为passed。
假设Bart同学的分数是75,请用if语句判断是否能打印出 passed:

def fun16():
  score =75
  if(score>=60):
    print("passed")
  else:
    print("no pass")
    print("no")

5.班里考试后,老师要统计平均成绩,已知4位同学的成绩用list表示如下:
L = [75, 92, 59, 68]
请利用for循环计算出平均成绩。

def fun17():
  sum =0.00;
  count =0;
  L = [75, 92, 59, 68]
     for s in L:
       sum+=s;
       count+=1;
   print(sum/count)

6.利用while循环计算100以内奇数的和

def fun18():
   sum=0
    num=0
    while num<=100:
        if (num%2)!=0:
            sum+=num
        num+=1
    print(sum)

7.利用 while True 无限循环配合 break 语句,计算 1 + 2 + 4 + 8 + 16 + ... 的前20项的和

def fun19():
  index =1
  sum = 0
  n=1
  while True:
    sum+=n
    n=n*2
    index+=1
    if(index==21):
    break;
  print(sum)

8.对100以内的两位数,请使用一个两重循环打印出所有十位数数字比个位数数字小的数,例如,23(2 < 3)

def fun21():
    x1 = [1,2,3,4,5,6,7,8,9] #个位
    x2 = [1,2,3,4,5,6,7,8,9] #十位
    for x in x1:
        for y in x2:
            if(y

9.针对下面的set,给定一个list,对list中的每一个元素,如果在set中,就将其删除,如果不在set中,就添加进去。
s = set(['Adam', 'Lisa', 'Paul'])
L = ['Adam', 'Lisa', 'Bart', 'Paul'](set是一个无序且不重复的元素集合。)

def fun26():
  s =set(['Adam', 'Lisa', 'Paul'])
  L = ['Adam', 'Lisa', 'Bart', 'Paul']
  for value in L:
    if value in s:
      s.remove(value)
    else:
      s.add(value)
  print(s)

10.请根据dict:
d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74 }
打印出 name : score,最后再打印出平均分 average : score。

def f():
    sum=0.00
    d = {'Adam': 95, 'Lisa': 85, 'Bart': 59, 'Paul': 74}
    for key,value in d.items():
        print(key,value)
        sum+=value
    print(sum/len(d))

你可能感兴趣的:(Python算法(初级))