Python语法基础在线实验闯关

  • 第1关 基本数据类型
  • 第2关 基本数据结构
  • 第3关 基本数据结构访问
  • 第4关 列表append和extend方法
  • 第5关 字符串连接
  • 第6关 字符串拆分和子串查找
  • 第7关 条件语句if
  • 第8关 循环语句while
  • 第9关 循环语句for和字典setdefault方法
  • 第10关 函数定义及应用


第1关 基本数据类型

# -*- coding: utf-8 -*-
def return_values():
    #定义浮点型数值变量a
    #定义字符类型变量b
    a=2.1
    b="Hello Python"
    return(a,b)

第2关 基本数据结构

# -*- coding: utf-8 -*-
def return_values():
    #定义一个字典d,键分别为a1,a2,值分别为列表[1,3,4]和元组(3,5,6)
    d={
        'a1':[1,3,4],
        'a2':(3,5,6)
    }
    return d

第3关 基本数据结构访问

# -*- coding: utf-8 -*-
def return_values(): 
    #**********************************
    #对列表a切片,分别切出1、[1,2]、[1,3]
    a=[1,2,3,4,5,6]
    a1=a[0]
    a2=a[0:2]
    a3=a[0:3:2]
    #**********************************
    #对元组b切片,分别切出1、(1,2)、(1,3)
    b=(1,2,3,4,5,6)
    b1=b[0]
    b2=b[0:2]
    b3=b[0:3:2]
    #**********************************
    #对字符串c切片,分别切出'h'、'he'、'hlo'
    c='hello world!'
    c1=c[:1]
    c2=c[0:2]
    c3=c[0:5:2]
    #**********************************
    #对字典d切片,分别切出a、c键对应的值
    d={'a':[1,4,5],'b':(1,2,3),'c':[7,8,9],'d':'hello world'}
    d1=d['a']
    d2=d['c']
    return (a1,a2,a3,b1,b2,b3,c1,c2,c3,d1,d2)

第4关 列表append和extend方法

def return_values():
    #建立含有3和Python的列表L1,并将L2添加到L1后面
    L2=[1,2,3,4]
    #********** Begin **********#
    L1=[3,'Python']
    L1.extend(L2)
    #********** End **********#
    return(L1,L2)

第5关 字符串连接

#用for循环依次获得2017年11月和12月的自然日期,并分别用列表L1和L2来存储
#注意:日期格式为长度10的字符串,比如“2017-11-02”。
def return_values():
    L1=[]
    L2=[]
    #begin
    for i in range(1,31):
        if i<10:
            L1.append('2017-11-0'+str(i))
        else:
            L1.append('2017-11-'+str(i))
    for i in range(1,32):
        if i<10:
            L2.append('2017-12-0'+str(i))
        else:
            L2.append('2017-12-'+str(i))
    #end
    return(L1,L2)

第6关 字符串拆分和子串查找

def return_values(): 
    #将列表L中的经纬度字符型数据按经度和纬度拆分出来并转换为数值类型
    #分别存储为两个不同的列表L1和L2
    L=['113.980 22.566', '113.940 22.686', '113.957 22.576', '114.244 22.564']
    #********** Begin **********#
    L1,L2=[],[]
    for i in L:
        L1.append(float(i[0:7]))
        L2.append(float(i[8:]))
    #********** End **********#
    return (L1,L2)

第7关 条件语句if

#利用条件语句实现成绩的分级
#其中90~100为优秀,80~89为良好
#70~79为中等,60~69为及格,0~59为不及格
#今有成绩为85分,请输出成绩等级
#在函数内编写程序
t=85
#********** Begin **********#
def return_values():
    if t>=90:
        print('优秀')
    elif t>=80:
        print('良好')
    elif t>=70:
        print('中等')
    elif t>=60:
        print('及格')
    else:
        print('不及格')
#********** End **********#

第8关 循环语句while

#某银行一年定期存款利率为3%,期末本金和利息一起存入下一个年度
#如果现存入1万元,需要经过多少年才使得本金和利息达到1.8万元
#运用while循环语句实现计算,并返回计算结果a(需要多少年)

#********** Begin **********#
def return_values():
    sum=1
    a=0
    while(sum<1.8):
        sum=sum*1.03
        a=a+1

    return(a)
#********** End **********#

第9关 循环语句for和字典setdefault方法

#给出一个嵌套列表L
#定义一个空字典D
#用for循环方式将列表L中的元素作为值依次填充至字典D中
#其中标识键用a,b,c,d来表示,并返回计算结果D
#********** Begin **********#
def return_values():
    L=[5,[4,'myself'],(1,2,4),'learn']
    L1=['a','b','c','d']
    D={}
    for i in range(0,4):
        D.setdefault(L1[i],L[i])

    return D
#********** End **********#

第10关 函数定义及应用

#定义一个函数用来计算长方体的表面积和体积
#函数的输入参数为长L,宽K和高H,返回结果为表面积S和体积V
#调用定义的函数计算长宽高分别为1,2,3的长方体,并返回计算结果t
#在函数内作答
#********** Begin **********#
def return_values():
    def ssvv(L,K,H):
        S=2*(L*K+L*H+K*H)
        V=L*K*H
        return (S,V)
    t=ssvv(1,2,3)

    return(t)
#********** End **********#