這道題是python核心程式設計裡面的題,改編了一下(因為我只實現了一部分)。
不同的url有不同的字尾例如.com和.cn對於不同的字尾我們要把url存到不同的合法且正確的html檔案中。
首先要先解決把不同的url存到不同的檔案中。這裡要用到os模組。我們要改變當前工作目錄,把目錄設定為你想要進行操作的目錄os.chdir('c:/.../filetest.py')
,然後把要進行操作的目錄的路徑傳給now_file。在這個資料夾下有三個子資料夾,可以用os.listdir()[x]
定位到你想用的資料夾的名字。最後要用os.path.join(path1, path2)
合成乙個完整目錄再進行操作。
os.chdir('c:/.../filetest.py')
now_file = os.getcwd()
base_html = os.path.join(now_file, os.listdir()[0])
s = input('請輸入你要儲存的url資訊:')
s1 = s.split( )
s2 = s1[1].split('.')[2][1]
#s2可以定位到中的'o'或者'n'來進行不同操作#
if s2 == 'o':
handle_com(s, now_file, base_html)
else:
handle_cn(s, now_file, base_html)
為什麼要存入html檔案中?因為這樣比較好看,在這道題裡我只是把url存入到了標籤裡,因此可以不用匯入jinja模板。當然了,這個方法比較笨,不過還沒學jinja模板只好用笨方法了。
我們需要乙個base.html檔案並把要訪問url的com.html檔案已經cn.html檔案放到乙個資料夾下。開始的時候base.html檔案裡要存東西如下:
h1>
html>
另外兩個檔案不用存東西。我們可以用迴圈把base.html檔案中的標籤遍歷一遍並寫入com.html或cn.html檔案中,並在
標籤裡寫入想要存的url。就像這樣:
def
handle_com
(s, now_file, base_html):
t = 0
child_path = os.path.join(now_file, os.listdir()[2])
f = open(base_html, 'r')
f1 = open(child_path, 'w')
for eachline in f:
if t == 2:
f1.write(' ' + s + '\n')
f1.write(eachline)
else:
f1.write(eachline)
t = t + 1
f1.close()
f.close()
這樣就把url存入html檔案中了。完整**:
import os
defhandle_com
(s, now_file, base_html):
t = 0
child_path = os.path.join(now_file, os.listdir()[2])
f = open(base_html, 'r')
f1 = open(child_path, 'w')
for eachline in f:
if t == 2:
f1.write(' '+ s +'\n')
f1.write(eachline)
else:
f1.write(eachline)
t = t + 1
f1.close()
f.close()
defhandle_cn
(s, now_file, base_html):
t = 0
child_path = os.path.join(now_file, os.listdir()[1])
f = open(base_html, 'r')
f1 = open(child_path, 'w')
for eachline in f:
if t == 2:
f1.write(' ' + s + '\n')
f1.write(eachline)
else:
f1.write(eachline)
t = t + 1
f1.close()
f.close()
os.chdir('c:/users/.../filetest.py')
now_file = os.getcwd()
base_html = os.path.join(now_file, os.listdir()[0])
s = input('請輸入你要儲存的url資訊:')
s1 = s.split( )
s2 = s1[1].split('.')[2][1]
if s2 == 'o':
handle_com(s, now_file, base_html)
else:
handle_cn(s, now_file, base_html)
h1>
html>
再發一遍,更改了幾個小錯誤。
python一道關於堆疊的題
利用列表來模擬堆疊。什麼是堆疊?堆疊是一種執行 後進先出 演算法的資料結構。在這裡利用列表來模擬堆疊。def push char1,l l.insert 0,char1 print l defpop y,l if len l 0 print cannot pop from an empty list...
python一道關於字典的題
建立字典。給定兩個長度相同的列表,比如說,列表 1,2,3,和 abc def ghi 用這兩個列表裡的所有資料組成乙個字典,像這樣 在這裡要用到dict.setdefault key,default 這個函式如果key在dict內部會返回key所對應的value,key不在dict內部會在dict...
關於Python列表的一道題
題目 list1 1,2,3,4 怎麼做才能得到 2,3,4 1,3,4 1,2,4 1,2,3 最近在學習python,今天學習了python中的列表,於是上csdn上看看相關的帖子和學習心得。於是瀏覽到了這篇帖子 list.index 方法詳解 在這篇帖子的最後,作者留了一道題目,也就是標題看到...