第一次python作业及总结
1、文件的增、删、改
通过第一道题的练习,学会了三个与文件有关的函数,分别为:
- os.mkdir(path):创建文件
- os.rename(path1,path2):重命名文件
- os.rkdir(path):删除文件
path:文件路径
代码如下:
import os
#path1为要创建的新的目录的路径
path1 = "e:/mywork"
os.mkdir(path1)#创建文件
path2 = "e:/Mywork"#path2为修改后的文件路径
os.rename(path1,path2) #重命名文件
os.rmdir(path2)#删除文件
设置path1的路径为:e:/mywork,path2的路径为:e:/Mywork,利用三个函数实现文件的创建、删除、以及重命名。
2、列表排序
思路:创建两个空列表list1和list2,输入的n个元素存入list1中,并逐一添加到list2中,最后利用函数list2.sort()进行列表的排序。
代码如下:
n = int(input())
list1 = []#创建空列表
list1 = input().split()
list2 = []
i = 0
while i < n:
j = list1[i]
list2.append(j)#向列表中添加元素
i += 1
list2.sort()#对列表中的元素进行排序
print(list2)
3、列表去重
思路:在第二题的基础上增加了去重的算法,创建第三个空列表list3,将list2中的元素与list3中的元素进行比较,若元素未出现在list3中,则存入list3,输出去重后的列表list3。
代码如下:
n = int(input())
list1 = []
list1 = input().split()
list2 = []
list3 = []
i = 0
while i < n:
j = list1[i]
list2.append(j)
i += 1
list2.sort()
for i in list2:#列表去重
if i not in list3:
list3.append(i)
list3.sort()
#list2 = list(set(list2))
print(list3)#输出去重后的列表3
对于列表的排序,也可以使用set()函数:list2 = list(set(list2)),直接对list2进行排序
4、字典的应用(姓名、学号)
思路:创建空字典,利用while循环,分别输入学号及姓名,存入字典值中;根据输入的姓名,再次利用while循环遍历字典中的元素,输出对应的学号。
代码如下:
n = int(input())
i = 0
j = 0
dicts = {}#创建空字典
print("请输入姓名、学号")
while i < n:
name = input("姓名:")
number = int(input("学号:"))
dict = {}
dict['姓名:'] = name
dict['学号:'] = number
dicts[i] = dict
i += 1
a = input("查询的姓名:")
while j < n:#查找姓名对应的学号
if a in dicts[j]['姓名:']:
num = dicts[j].get('学号:')
print("学号为:%d" % num)
j += 1
5、总结
1、对于实现文件的增、删、改,除了从学习的连接中学习到修改文件名的函数os.rename()之外,通过上网查资料,学到了创建和删除文件的两个函数
2、python的输入语句和输出与语句有些地方与C语言不同,是值得注意的地方,input()和print(),有一些自带的方法需要记忆
3、输入姓名之后输出对应的学号,有关系的变量令我想到使用字典来解决问题,但对于如何循环输入元素创建字典,我参考了许多资料,在字典中嵌套多个字典