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 **********#