收藏 分销(赏)

Python语言实验课件整套教学课件教学教程全套电子讲义讲义.pptx

上传人:天**** 文档编号:10089892 上传时间:2025-04-21 格式:PPTX 页数:91 大小:5.75MB 下载积分:18 金币
下载 相关 举报
Python语言实验课件整套教学课件教学教程全套电子讲义讲义.pptx_第1页
第1页 / 共91页
Python语言实验课件整套教学课件教学教程全套电子讲义讲义.pptx_第2页
第2页 / 共91页


点击查看更多>>
资源描述
,THANKS!,信息学院,python,语言程序设计实验,实验一,顺序与选择结构,一、实验目的,1使用Python语言编写简单的计算机程序,初步了解Python语言的特点。,2掌握基本输入/输出方法。,3熟练掌握If语句的使用方法。,二、实验内容,1,程序填空,1.1从键盘输入圆的半径r,计算并输出圆的周长C和面积S,圆周率取math库中的常数量pi,另外输出用%f,保留2位小数。请填空使程序完整,并在计算机上调试程序,以测试填入的部分是否正确。,参考答案:,(1)2*math.pi*r,(2),math.pi*r*r,二、实验内容,1,程序填空,1.2 输入一个3位正整数,将它逆序输出。假设输入的3位整数是938,则输出839。请将未完成的部分填入,实现其功能,并在计算机上调试程序,以测试填入的部分是否正确。,参考答案:,(1)x%100/10,(2),x%10,(3),d,二、实验内容,1,程序填空,1.,3,在温度刻画的不同体系中,摄氏度以1标准大气压下水的结冰点为0度,沸点为100度。华氏度以1标准大气压下水的结冰点为32度,沸点为212度。利用程序辅助进行摄氏度和华氏度之间的转换,结果保留1位小数。,设计算法:根据华氏和摄氏温度定义,其单位刻度对应温度关系为(212-32)/(100-0)=1.8,转换公式如下:,C=(F 32)/1.8 F=C*1.8+32,参考答案:,(1)float(T0:1*1.8+32),(2),T-1 in,F,f,:,(3),print(The converted temperature is%.1f,C,%,C,),二、实验内容,1,程序填空,1.,4,我国的婚姻法规定,男性22岁为合法结婚年龄,女性20岁为合法结婚年龄。编写程序判断一个人是否到了合法结婚年龄,并输出判断结果:“Yes”或“No”或Error。,参考答案:,(1)22=Age=120:,(2),Age0,有两个不同的实根;当d=0,有两个相同的实根;当d0,无实数根。输入参数a、b、c,输出相应的结果,保留两位小数,。,参考答案:,二、实验内容,2,程序设计,2,.,6,输入三个数,判断它们能否构成一个三角形。若能,则输出三角形是等腰三角形、等边三角形、直角三角形,还是普通三角形;若不能,则输出“不能组成三角形”提示信息。,参考答案:,二、实验内容,2,程序设计,2,.,7模拟计算器的功能,能根据用户输入的两个运算数和运算符(+、-、*、/),对两个数进行相应的运算,输出运算结果。注意:除法运算/的除数不能为0。如果能运算,输出a和b的运算结果;如果c为除号,且b为0,输出“除数为0!”;如果c不是+、-、*或/中的运算符号,输出“运算符号错误!”,参考答案:,实验二,循环结构,一、实验目的,1掌握表达式中逻辑运算符、关系运算符的功能和特点。,2掌握for和while循环的区别。,3掌握for循环的语法结构并用其解决问题。,二、实验内容,1,程序填空,1.1已知y=1+1/3+1/5+1/2n-1,求y3时的最大n值以及最大n值对应的y值(y值保留小数点后2位)。请将未完成的部分填入,实现其功能,并在计算机上调试程序,以测试填入的部分是否正确。,参考答案:,(1)sum3:,(2),sum-1/(2*n-1),(3)(“%d,%.2f”%(n,sum),二、实验内容,1,程序填空,1.2 小玉开心的在游泳,可是她很快难过的发现,自己的力气不够,游泳好累哦。已知小玉第一步能游2米,可是随着越来越累,力气越来越小,她接下来的每一步都只能游出上一步距离的98%。现在小玉想知道,如果要游到距离x米的地方,她需要游多少步呢。,参考答案:,(1)sumx:,(2),a=a*0.98,二、实验内容,1,程序填空,1.,3,翻译密码。为了保密,常不采用明文,而用密文,即按一定规则将字符转换为另一字符,收报人则按相反的规律转换得到原来的字符。本程序规则为:字母unicode码加5,其他字符不变,对原文进行加密,并显示密文。字母的最后5个加5不是字母了,处理规则为循环成前5个,比如“X”的密文为“C”。,参考答案:,(1)s.isalpha():,(2),n=n,(3),n=n-26,(4)new=new+s,二、实验内容,1,程序填空,1.,4,编写程序计算学生的平均分。输入的第一行表示学生人数n;标准输入的第2至n+1行表示学生成绩。输出的一行表示平均分(保留两位小数)。若输入的数据不合法(学生人数不是大于0的整数,或学生成绩小于0或大于100),输出“illegal input”。,参考答案:,(1)i in range(n):,(2),(illegal input),(3)y=y+x,(4)aver=y/n,二、实验内容,1,程序填空,1.,5,有一根长度为321米的钢材料,要将它截取成两种规格a、b的长度分别为17米和27米的短料,每种至少 1 段,问分隔成 a,b 各多少段后,剩余的残料 r 最少?请将未完成的部分填入,实现其功能,并在计算机上调试程序,以测试填入的部分是否正确。,参考答案:,(1)(1,321/17+1):,(2),(1.321/27+1):,(3)321-17*a-27*b,二、实验内容,2.程序设计,2.1 一球从某一高度落下(整数,单位米),每次落地后反跳回原来高度的一半,再落下。编程计算气球在第5次落地时,共经过多少米?第5次反弹多高?输入一个整数h0,表示球的初始高度。输出两个数据s和h,分别表示第5次落地时共经过s米,第5次反弹高度为h米,s和h用空格隔开。,参考答案:,二、实验内容,2.,程序设计,2.2 Fibonacci数列的前两个数是1和1,从第三个数开始,每个数等于前两个数之和。编程计算并输出此数列的前30个数,且每行输出5个数。,参考答案:,二、实验内容,2,程序设计,2,.,3,编写程序,输入字符串形式的二进制整数(长度为16位,采用补码表示),把它转换为十进制整数,输出该十进制整数。,参考答案:,二、实验内容,2,程序设计,2,.,4,打印下列菱形图案:,*,*,*,*,*,*,*,参考答案:,二、实验内容,2,程序设计,2,.,5一辆卡车违反交通规则,撞人后逃跑,车号为一四位整数。现场有三人目击事件,但都没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同;丙是数学家,他说:四位的车号所构成的数字正好等于某一个整数的平方。请根据以上线索求出车号。,参考答案:,二、实验内容,2,程序设计,2,.,6,编程打印九九乘法表:,1*1=1,1*2=2 2*2=4,1*3=3 2*3=6 3*3=9,1*4=4 2*4=8 3*4=12 4*4=16,1*5=5 2*5=10 3*5=15 4*5=20 5*5=25,1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36,1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49,1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64,1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81,二、实验内容,参考答案:,实验三,复杂数据类型,一、实验目的,1掌握复杂类型的特点和其中元素的前后关系。,2掌握访问复杂数据类型的方法。,3掌握运用复杂数据类型解决实际问题的方法。,二、实验内容,1.1从给定列表中找出只出现一次的数,如:给出1,2,2,3,1,4,3,返回4。,参考答案:,(1)type(b),(2),jishu=0,(3),append(each1),二、实验内容,1.2 下面程序实现了将输入一个钱币整数数字,将其转换为汉字的大写钱数的功能。请填空使程序完整,并在计算机上调试程序,以测试填入的部分是否正确。,参考答案:,(1)len(num),(2),rm+r8+n-i,(3),rm,二、实验内容,2.程序改错,2.1 以下程序可删除列表中的相应元素。(如:列表为3,5,7,13,11,17,17,21,27,34,7,17 删除元素为17。)请输入程序并在计算机上调试程序,判断程序是否正确,如果错误,该如何改正。,参考答案:,二、实验内容,2.程序改错,2.2 输入一个月份数字,返回对应月份名称缩写。,参考答案:,二、实验内容,3程序设计,3.1 输入一组数到列表nums,请找到列表中任意两个元素相加能够等于9的元素,如:(2,7),(1,8),结果从小到大顺序输出。,参考答案:,二、实验内容,3程序设计,3.2 翻译密码。为了保密,常不采用明文,而用密文,即按一定规则将字符转换为另一字符,收报人则按相反的规律转换得到原来的字符。本程序规则为:字母unicode码加5,其他字符不变,对原文进行加密,并显示密文。字母的最后5个加5不是字母了,处理规则为循环成前5个。比如“X”的密文为“C”。,参考答案:,二、实验内容,3程序设计,3.3一辆卡车违反交通规则,撞人后逃跑。现场有三人目击事件,但都没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但与前两位不同;丙是数学家,他说:四位的车号所构成的数字正好等于某一个整数的平方。请根据以上线索求出车号。,参考答案:,二、实验内容,3程序设计,3.4 输入一个数,判断该数中是否存在重复的数字。如1314,有重复,520,无重复。请将代码粘贴到答案区。,参考答案:,二、实验内容,3程序设计,3.5定义一个电话簿,里头设置以下联系人:,mayun:13309283335,zhaolong:18989227822,zhangmin:13382398921,Gorge:19833824743,Jordan:18807317878,Curry:15093488129,Wade:19282937665,要求完成以下功能,(1)输入人名,电话号码,添加到电话簿;,(2)输入人名,修改电话号码;,(3)输入人名,删除该联系人信息;,(4)输入人名,查询该联系人的号码。,参考答案:,实验四,函数,一、实验目的,1掌握定义函数和调用函数的方法。,2掌握参数传递的多种方式。,3了解嵌套函数的使用方法和lambda函数的使用方法。,4掌握变量的作用范围。,二、实验内容,1,程序填空,1.1下面的Python函数检查给定的字符串s是否为合法的变量名。,参考答案:,(1)s1:,(2),c not in alphasnums,二、实验内容,1.2 假设电话号码的模式为:3个数字,一个短横线,4个数字,一个短横线和4个数字。如:186-7123-4567。编写isPhoneNum()函数,用以检查输入的字符串是否匹配电话号码模式,若匹配返回True,否则返回False。,参考答案:,(1)s.count(-)=2,(2),s1=s1+i,(3),print(False),二、实验内容,1.,3,编写函数,接收一个字符串,分别统计大写字母、小写字母、数字、其他字符的个数,并以元组的形式返回结果。,参考答案:,(1)0=i=9,(2),(c,apital,little,digit,other),二、实验内容,2,程序设计,2,.1 编写一个函数mySum(a,n),求以下n项式的和,并返回该值:,s=a+aa+aaa+.+aa.a,其中a是19的数字,最后一项是n位都是a的数字,参考答案:,二、实验内容,2,.2 编写函数primeNumber(n)用于判断正整数n是否是素数,若是素数则返回True,否则返回False。输入一个大于2的正整数m,调用函数primeNumber()统计范围2,m内的所有素数之和。,参考答案:,二、实验内容,2,.3编写函数maxChar(s):输入字符串s,统计字符串中出现次数最多的字母及其出现次数,以字典来存放结果,并返回该值。如果有多个字母出现次数一样,则按字母顺序输出字母及其出现次数。,参考答案:,二、实验内容,2,.4 根据用户输入的日期计算天数。,参考答案:,二、实验内容,2,.5编写函数sumThree(n),实现功能是,输入一个正整数n,从1开始到这个数字n的奇数序列里,统计所有数字中3出现的次数。,参考答案:,二、实验内容,2,.,6,求整数n以内(含n)的全部亲密数。,参考答案:,实验,五,文件,一、实验目的,1,掌握字符串类型的操作方法,。,2,掌握文件的读写方法以及打开和关闭等基本操作,。,3,掌握使用,jieba,库处理中文文本的方法,。,二、实验内容,1.1,从键盘输入一个字符串(可包含多行,以“,#,”号或空行作为结束符),将它写入文件,out.txt,中,。,参考答案:,(1),open(out.txt,w),(2),s!=,(3),s:pos,二、实验内容,1.2,文件分割。将一个文件(,file1.txt),从中间分为两个文件(,file2.txt,和,file3.txt)。,文件,file1.txt,的前半部分内容写入,file2.txt,,后半部分内容写入,file3.txt。,参考答案:,open(file1.txt,r),f1.seek(0),s=f1.readline(),二、实验内容,2,程序设计,2,.1,图形绘制。以下是文本文件,draw.dat,的部分数据:,1,0,91,5,0,91,9,0,91,13,0,91,其中,每行有,3,个数值,第,1,个数值表示行进距离的像素值,第,2,个数值为,0,时表示左转,为,1,时右转,第,3,个数值表示转动的角度。,编写程序,根据文件,draw.dat,中的数据,使用,turtle,库中的,turtle.fd(),函数、,turtle.lt(),函数和,turtle.rt(),函数绘制图形,参考答案:,二、实验内容,2,程序设计,2,.2,数据统计。以下是某地区一周气象数据文件,temp.txt,中的内容:,2018-11-042415,2018-11-051811,2018-11-06117,2018-11-0795,2018-11-08163,2018-11-09197,2018-11-101810,其中,每行记录某一天的气温数据,包括日期、最高气温和最低气温。,(1),编写程序,找出这一周中哪一天最热(按最高气温计算)?最高多少度?这一周中哪一天最冷(按最低气温计算)?最冷多少度?,(2),假设在气象意义上,入冬标准是有连续,5,天日均气温低于,10,,根据这一周的气象数据判断该地区是否已经入冬。,输入样例:,文件,temp.txt,输出样例,:,最高气温:,2018-11-04,,,24,度,最低气温:,2018-11-08,,,3,度,未入冬,2.2,数据统计。,参考答案:,二、实验内容,二、实验内容,2,程序设计,2,.3,Python,源文件改写。编写一个程序,读取一个,Python,源程序文件,将文件中除关键字以外的所有小写字母转换为大写字母并存入文件,dest.py,。要求,dest.py,能够被,Python,解释器正确解释执行。,参考答案:,二、实验内容,2,程序设计,2,.4,红楼梦,人物统计。编写程序统计,红楼梦,中前,20,位出场最多的人物。,输出样例,:,贾宝玉,4158,贾母,2172,王熙凤,1586,林黛玉,1186,王夫人,929,贾琏,660,平儿,582,袭人,580,宝钗,564,薛姨妈,521,探春,420,鸳鸯,403,史湘云,396,贾政,342,晴雯,325,贾珍,271,刘姥姥,271,紫鹃,269,邢夫人,254,香菱,222,二、实验内容,2,程序设计,2,.5,单词拼写检查。已知有一个正确单词索引表(保存在当前目录下的,index.txt,文件中,且全为小写字母,按照字典序由小到大排列,每个单词占一行),编写程序利用该单词表对某一英文文章(保存在当前目录下的另一个文件,in.txt,中)进行单词拼写检查,若该英文文章中出现的单词没有出现在单词索引文件中(检查时大小写无关),则将该出错的单词(其中的字母全部转换为小写)输出到当前目录下的另一文件,error.txt,中,每个单词占一行,并且以字典序由小到大的顺序输出。,假设:,1,、,in.txt,中的文章可能没有经过排版,格式可能杂乱无章。,2,、,index.txt,中的单词个数不超过,1000,个,每个单词的长度不超过,50,个字母。,3,、若出错的单词多次出现,则多次输出。,输入描述:,保存单词索引表的文件,index.txt,和保存英文文章的文件,in.txt,都位于当前目录下。,输出描述:,将出错的单词以字典序由小到大的顺序输出到当前目录下的文件,error.txt,中,每个单词单独占一行,多次出错的单词多次输出。若没有出现错误单词,则什么也不输出。,2,程序设计,2.5,单词拼写检查。,参考答案:,二、实验内容,实验六,常用库和第三方库,一、实验目的,1掌握,SQLite,和,MySQL,数据库编程。,2掌握,GUI,编程,。,3掌握,网络并发与,Web,编程,。,二、实验内容,1.Python,数据库编程,1.1,SQLite,数据库创建与操作。,创建一个测试数据库,tesb.db,该数据库中包含一张student表,该数据表含有五个字段学号sid、姓名sname、性别ssex、年龄sage、班级sclass,然后分别完成数据添加、删除、修改和查询操作。,参考答案:,二、实验内容,1.Python,数据库编程,1.,2,MySQL数据库创建与操作,。,创建一个测试数据库test.db,该数据库中包含一张teacher表,该数据表含有六个字段教工号tid、姓名tname、性别tsex、年龄tage、职称ttitle、院系tdept,然后分别完成数据添加、删除、修改和查询操作。,参考答案:,二、实验内容,2.,Python GUI编程,2,.,1,简单GUI编程-学生成绩统计,。,利用tkinter库完成2项GUI编程任务。,(1)利用tkinter库设计1个如图所示的GUI图形界面。,(2)利用GUI面向对象编程方式实现学生四门课程的平均成绩计算功能,。,参考答案:,二、实验内容,2.,Python GUI编程,2,.,2,综合GUI编程-学生管理平台,。,利用sqlites、tkinter、tkinter.messagebox和os库完成5项编程任务。,(,1,)创建两张数据表user(uid,upwd)和student(sid,sname,ssex,sage,sclass)。,(2)设计一个用户登录类sLogin,布局用户登录界面,实现“登录”和“退出”功能。,(3)设计一个主控管理类sMain,布局主控管理界面,设计一级水平主菜单4项,包括“学生管理”、“”“课程管理”、“成绩管理”和“退出系统”。其中主菜单“成绩管理”可设计二级下拉菜单3项,包括“录入成绩”、“查询成绩”和“统计成绩”。(可以选做:下拉菜单“查询成绩”自行设计三级级联菜单2项,包括“理论成绩”和“实验成绩”。)实现菜单的功能设计与层次管理。,(4)设计一个学生管理类sManage,布局学生管理界面,实现学生“录入”、“删除”、“修改”、“查询”、“查看”和关闭6个子功能。(以下给出单个“查询”和所有“查看”功能图示),(5)通过菜单集成关联窗体。,2.,Python GUI编程,2,.,2,综合GUI编程-学生管理平台,。,程序,界面要求,设计如下图:,二、实验内容,参考答案:,二、实验内容,2.,Python GUI编程,2,.,2,综合GUI编程-学生管理平台,。,参考答案(续):,二、实验内容,2.,Python GUI编程,2,.,2,综合GUI编程-学生管理平台,。,参考答案(续):,二、实验内容,2.,Python GUI编程,2,.,2,综合GUI编程-学生管理平台,。,参考答案(续):,二、实验内容,3.,Python网络并发与Web开发,3,.,1,多进程编程-多个函数并发执行,。,利用multiprocessing多进程包完成以下2项编程任务。,(1)分别创建8个函数worker_1()、worker_2()、worker_3()、worker_4()、,worker_5()、worker_6()、worker_7()、worker_8()。,(2)分别将这8个函数创建为8个进程,并实现并发执行。,参考答案:,二、实验内容,3.,Python网络并发与Web开发,3,.,2,多线程编程-定时自动关闭窗口,。,利用tkinter图形界面库和threading多线程包完成以下2项编程任务。,(1)利用tkinter库设计如,图所示,程序界面。,(2)分别创建3个函数autoClose1()、autoClose2()和autoClose3(),然后利用threading库将这3个函数创建为3个线程,并实现并发执行。,参考答案:,二、实验内容,3.,Python网络并发与Web开发,3,.,3,Socket网络编程-服务器和客户端通信,。,利用tkinter图形界面库和socket套接字包完成以下3项编程任务。,(1)利用socket库创建1个服务器端实时监听程序,绑定主机IP地址(默认127.0.0.1)和端口(8123)。用于实时监听客户端状态,接收客户端消息,并即时发送消息给对应客户端。,(2)利用tkinter库和socket库分别创建2个客户端收发消息程序,连接服务器端主机,实现与服务器端之间消息发送与消息接收的功能。,(3)实现服务器和客户端的连接及单对多的并发通信功能。,程序界面如下图所示:,二、实验内容,3.,Python网络并发与Web开发,3,.,3,Socket网络编程-服务器和客户端通信,。,参考答案:,二、实验内容,3.,Python网络并发与Web开发,3,.,4,综合Web编程-Flask框架,。,利用Web开发框架包flask完成4项编程任务。,(1)创建门户信息展示部分。,分别建立4个路由渲染呈现4个网页。,(index.html、show_test1.html、show_test2.html、show_test3.htm),(2)创建前端用户平台部分。,分别建立5个路由渲染呈现4个网页。,(user_login.html、user_platform.html、query_user.html、query_url.html),(3)创建后台管理平台部分。,分别建立2个路由渲染呈现2个网页。,(admin_login.html、admin_platform.html),(4)创建其他信息提示部分。,分别建立1个路由和两个错误句柄渲染呈现3个网页。,(info.html、404.html、500.html),二、实验内容,3.,Python网络并发与Web开发,3,.,4,综合Web编程-Flask框架,。,参考答案:,二、实验内容,3.,Python网络并发与Web开发,3,.,4,综合Web编程-Flask框架,。,参考答案(续):,二、实验内容,3.,Python网络并发与Web开发,3,.,4,综合Web编程-Flask框架,。,参考答案(续):,实验七,科学计算,一、实验目的,1掌握,numpy,库的使用,。,2掌握,matplotlib,库的使用,。,3掌握运用,numpy,库和,matplotlib,库,解决实际问题的方法。,二、实验内容,1.1,以下程序是用于绘制一个在二维平面上随机游走的图形,输出样例如下图所示,请将程序补充完整,。,参考答案:,walks=draws.cumsum(1),输出样例:,二、实验内容,1.2 以下程序是用于绘制一个给定的二次函数,并同时画出梯形法求积分时的各个梯形,输出样例如下图所示,请将程序补充完整。,输出样例:,1.2 以下程序是用于绘制一个给定的二次函数,并同时画出梯形法求积分时的各个梯形,输出样例如下图所示,请将程序补充完整。,(,续,),二、实验内容,参考答案:,(1)y=Quadratic(x),(2),ai,ai,0,Quadratic(ai),(3),plot(npladders:,0,npladders:,1),二、实验内容,1.3 以下程序是用于将一张图片与其三种纯色图片,一同显示出来输出,样例如下图所示,请将程序补充完整。,输出样例:,二、实验内容,1.3 以下程序是用于将一张图片与其三种纯色图片,一同显示出来输出,样例如下图所示,请将程序补充完整。,(续),参考答案:,(1)R:,:,(1,2)=0,(2)G:,:,(0,2)=0,(3)B:,:,(0,1)=0,(4)fig,ax=plt.subplots(2,2),二、实验内容,2.程序阅读,2.1,分析以下程序,写出程序的执行结果,参考答案,nan,False,False,nan,nan,True,False,二、实验内容,3程序设计,3.1 产生一个55的矩阵,中间为0,四周为1。,参考答案:,输出样例:,1.1.1.1.1.,1.0.0.0.1.,1.0.0.0.1.,1.0.0.0.1.,1.1.1.1.1.,二、实验内容,3程序设计,3.2 编写程序读入一张图片后,将图像分成1010的子块,然后随机打乱各个子块顺序,拼成新的图片。,参考答案:,输出样例:,二、实验内容,3程序设计,3.2 编写程序读入一张图片后,将图像分成1010的子块,然后随机打乱各个子块顺序,拼成新的图片。,(续),参考答案:,输出样例:,
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服