參考 :
1.編寫乙個程式,接受使用者的輸入並儲存為新的檔案,程式實現如圖:
#接受使用者的輸入並儲存為新的檔案
f = open(fname,"w")
print('請輸入內容【單獨輸入\':w\'儲存退出】:')
while
true:
words = input()
if words !=":w":
f.write(words+"\n")
#f.write("%s\n"%words)
else:
break
f.close()
'''#測試
fname = input("請輸入檔名:")
filewriter(fname)
'''2.編寫乙個程式,比較使用者輸入的兩個檔案,如果不同,顯示出所有不同處的行號與第乙個不同字元的位置,程式實現如
圖:
def
filecompare
(filename1,filename2):
#比較兩個檔案,返回不同的行號
f1 = open(filename1,"r")
f2 = open(filename2,"r")
count = 0
#統計行數
diff = #統計不一樣的行號
for line1 in f1:
line2 = f2.readline()
count += 1
if line1 != line2:
f1.close()
f2.close()
return diff
'''
#測試filename1 = input("請輸入檔名:")
filename2 = input("請輸入檔名:")
diff = filecompare(filename1,filename2)
if len(diff) == 0:
print("兩個檔案完全一樣!")
else:
print("兩個檔案共有%d個地方不同:"%len(diff))
for each in deff:
print("第%d行不一樣"%each)
'''
3.編寫乙個程式,當使用者輸入檔名和行數(n)後,將該檔案的前n行內容列印到螢幕上,程式實現如圖:
#列印輸入的行數
f = open(fname)
print('\n檔案%s的前%s的內容如下:\n'%(fname,linenum))
for i in range(linenum):
print(f.readline())
f.close()
'''#測試
file_name = input(r'請輸入要開啟的檔案(c:\test.txt):') #注意r
line_num = input('請輸入需要顯示該檔案前幾行:')
fileprint(file_name,line_num)
'''4.呃,不得不說我們的使用者變得越來越刁鑽了。要求在上一題的基礎上擴充套件,使用者可以隨意輸入需要顯示的行數。(如輸
入13:21列印第13行到第21行,輸入:21列印前21行,輸入21:則列印從第21行開始到檔案結尾所有內容)
#列印指定範圍的行
(begin,end) = linesize.split(":",1)
if begin == "":
begin = 1
else:
begin = int (begin)
if end == "":
end = -1
else:
end = int (end)
if begin == 1
and end == -1 :
text = "的全文"
elif begin == 1:
text = "從開始到%s"%end
elif end == -1:
text = "從%s到結束"%begin
else:
text = "從第%s行到第%s行"%(begin,end)
linenum = end - begin +1
f = open(fname,"r")
for i in range(begin-1):#讀掉前begin-1行
f.readline()
print("\n檔案%s%s的內容如下:\n"%(fname,text)) #開始列印
if linenum < 0: #列印至結束
print(f.read())
else:
for j in range(linenum): #列印
print(f.readline())
f.close()
'''#測試
fname = input(r'請輸入要開啟的檔案(c:\\test.txt):')
linesize = input('請輸入需要顯示的行數【格式如 13:21 或 :21 或 21: 或 : 】:')
fileview(fname, linesize)
'''
檔案操作小練習
1.有如下檔案,a1.txt,裡面的內容為 老男孩是最好的學校,全心全意為學生服務,只為學生未來,不為牟利。我說的都是真的。哈哈 分別完成以下的功能 a,將原檔案全部讀出來並列印。b,在原檔案後面追加一行內容 信不信由你,反正我信了。c,將原檔案全部讀出來,並在後面新增一行內容 信不信由你,反正我信...
修改檔案小練習
自己用list寫的,原檔案用的就是自動生成username的小程式 with open username.txt a encoding utf 8 as f f.seek 0 all new user for line in f all file line.split a user all file...
程式設計小練習
檔名稱 test.cpp 完成日期 2016年4月11日 問題描述 ip位址 在日常網路環境中,基本是都在使用b,c兩大類位址,而ade這3類位址都不打可能被使用到。include using namespace std class ip ip位址共4位元組,或者看成結構體所指4部分 unsigne...