Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537
在講訴條件語句之前,需要先補充語句塊的知識。語句塊并非一種語句,它是在條件為真時執行一次或執行多次的一組語句,在代碼前放置空格縮進即可創建語句塊。它類似于C、C++、Java等語言的大括號({ })來表示一個語句塊的開始和結束。
在Python中使用冒號(:)來標識語句塊的開始,塊中每一條語句都有縮進并且縮進量相同,當回退到上一層縮進量時,就表示當前語句塊已經結束。 下面開始詳細講解條件語句。
單分支語法如下:
if <condition>:
<statement>
<statement>
< condition > 是條件表達式,基本格式為< expr >< relop >< expr >;< statement >是語句主體。判斷條件如果為真(True)就執行語句,如果為假(False)就跳過語句,執行下一條語句。條件判斷通常有布爾表達式(True、False)、關系表達式(>、<、>=、<=、==、!=)和邏輯運算表達式(and、or、not,其優先級從高到低是not、and、or)等。
注意:在Python2.x版本中,條件表達式是不強制要求用括號括起來的,但條件表達式后面一定要添加英文冒號字符。
a=10
if a==10:
print('變量a等于10')
print(a)
輸出結果如下:
二分支語法如下:
if <condition>:
<statement>
<statement>
else:
<statement>
<statement>
執行過程如下圖所示:
如果條件語句< condition >為真,if后面的語句就被執行,如果為假,則執行else下面的語句塊。條件語句的格式為:< expr >< relop >< expr >,其中< expr >為表達式、為關系操作符。例如:a >=10、b !=5等。
a=10
if a >=5:
print('變量a大于等于5')
print(a)
else:
print('變量a小于5')
print(a)
輸出結果如下,由于變量a為10,大于5執行if中的語句。
if多分支由if-elif-else組成,其中elif相當于else if,同時它可以使用多個if的嵌套。具體語法如下所示:
if <condition1>:
<case1 statements>
elif<condition2>:
<case2 statements>
elif<condition3>:
<case3 statements>
...
else:
<default statements>
該語句是順序評估每個條件,如果當前條件分支為True,則執行對應分支下的語句塊,如果沒有任何條件成立,則執行else中的語句塊,其中else是可以省略的。代碼如下:
num=input("please input:")
num=int(num)
print(num)
if num >=90:
print('A Class')
elif num >=80:
print('B Class')
elif num >=70:
print('C Class')
elif num >=60:
print('D Class')
else:
print('No Pass')
輸出值為76,則在80到70之間,成績為C等級,輸出結果如下圖所示。
注意:由于Python不支持switch語句,所以多個條件判斷,只能用elif來實現,如果判斷需要多個條件需同時判斷時,可以:
# 判斷值是否在小于0或大于10
num=10
if num < 0 or num > 10:
print('hello')
else:
print('undefine')
# 輸出結果: undefine
# 判斷值是否在0~5或者10~15之間
num=8
if (num >=0 and num <=5) or (num >=10 and num <=15):
print('hello')
else:
print('undefine')
輸出結果如下圖所示:
當if有多個條件時可使用括號來區分判斷的先后順序,括號中的判斷優先執行,此外and和or的優先級低于>(大于)、<(小于)等判斷符號,即大于和小于在沒有括號的情況下會比與或要優先判斷。
同時,你也可以在同一行的位置上使用if條件判斷語句,如下實例。但不見大家使用類似的語法,在我們編寫項目或實戰中,很可能你的代碼會供別人學習,有時你只負責其中一部分,良好的代碼格式及注釋是非常必要的。
var=520
if (var==520): print("感謝您關注娜璋AI安全之家")
Python循環語句主要分為while循環和for循環,它允許我們執行一個語句或語句組多次。
while循環語句的基本格式如下:
while <condition>:
<statement>
else:
<statement>
執行流程如下圖所示:
條件表達式< condition >如果為真時,則循環體重復執行,直到條件判斷為假,循環體終止,如果第一次判斷條件就為假,則直接跳出循環執行else語句,注意else語句可以省略,同時冒號(:)開始進入循環體,縮進區分語句塊。條件語句condition包括布爾表達式(True、False)、關系表達式(>、<、>=、<=、==、!=)和邏輯運算表達式(and、or、not)等。
案例1:1+2+…+100
i=1
s=0
while i <=100:
s=s+i
i=i+1
else:
print('over')
print('sum=', s)
這段代碼是作者寫博客或授課時,講述循環語句最常用的例子,求1+2+3+…+100的結果,答案是5050。該段代碼反復執行“i<=100”判斷,當i加到101時,判斷i>100為假則結束循環執行else語句。
案例2:循環打開網站
再舉一個實例,通過定義一個while循環,調用webbrowser庫的open_new_tab()函數循環打開百度首頁網址,下面代碼反復打開了百度首頁5次。完整代碼如下:
import webbrowser as web
import time
import os
i=0
while i<5:
web.open_new_tab('http://www.baidu.com')
i=i+1
time.sleep(0.8)
else:
os.system('taskkill /F /IM iexplore.exe')
print('close IE')
代碼是調用webbrowser庫中open_new_tab()函數打開窗口(百度鏈接)5次。
最后循環結束執行os.system()操作系統函數,調用taskkill命令結束IE瀏覽器進程(Iexplore.exe),其他瀏覽器程序修改為chrome.exe、qq.exe或firefox.exe即可。其中參數“/F”表示強行終止程序,“/IM”表示圖像,如下圖所示。
注意:上述代碼實現了循環打開某個網站,可以應用于刷取網頁瀏覽量或Web開發測試等功能。比如新浪博客等部分網頁打開一次瀏覽器會計算一次瀏覽次數,通過上面這段代碼可以循環增加閱讀量,部分網站又是通過瀏覽量進行排序的,不妨試試看。作者引入該代碼僅為讀者了解循環,也為后面的爬蟲知識埋下伏筆。
案例3:奇數和偶數計算
最后補充一個奇數和偶數計算的案例,其基本流程如下圖所示:
代碼如下:
numbers=[12, 37, 5, 42, 8, 3]
even=[]
odd=[]
while len(numbers) > 0:
number=numbers.pop()
if(number % 2==0): #偶數判斷
even.append(number)
else:
odd.append(number)
#輸出結果
print(even)
print(odd)
輸出結果如下:
[8, 42, 12]
[3, 5, 37]
for循環語句的基本格式如下:
for <var> in <sequence>:
<statement>
<statement>
流程圖如下:
自定義循環變量var遍歷sequence序列中的每一個值,每個值執行一次循環的語句塊。sequences表示序列,常見類型有list(列表)、tuple(元組)、strings(字符串)和files(文件)。下面的代碼是計算1到100的求和,輸出三角形星號的示例。
#元組循環
tup=(1,2,3,4,5)
for n in tup:
print(n)
else:
print('End for\n')
#計算1+2+...+100
s=0
for i in range(101):
s=s + i
print('sum=', s)
#輸出三角形星號
for i in range(10):
print("*"*i)
輸出結果如下圖所示,循環遍歷元組tup變量中的值,依次獲取并輸出;然后計算1累加到100,range(101)表示依次獲取101范圍內的100個數字,其累加結果為5050;最后輸出星號三角形,print “ * ” * i 代碼中,第一個星號表示輸出星號字符串,第二個星號是乘法,表示輸出5個星號,終輸出三角形。打印圖形是編程基礎,使用Python實現要比C語言容易很多,但原理邏輯是一樣的。
Break和Continue是兩個常用的跳出循環語句。
跳出最內層while、for循環,在語句塊執行過程中終止循環,并且跳出整個循環。
s=0
num=0
while num<20:
num +=1
s +=num
if s > 100:
break
print("The sum is", s)
# The sum is 105
當求和變量s大于100的時候,進入if判斷,執行break跳出循環,最后輸出105。
在語句塊執行過程中終止當前循環,跳出該次循環,執行下一次循環。
for num in range(10):
if num % 2==0:
print("even number:", num)
continue
print("number:",num)
輸出結果如下,當為偶數的時候continue跳出當前循環,for循環中只輸出偶數。
>>>
even number: 0
number: 1
even number: 2
number: 3
even number: 4
number: 5
even number: 6
number: 7
even number: 8
number: 9
>>>
pass語句是空語句,為了保持程序結構的完整性所使用的。
# 輸出 Python 的每個字母
for letter in 'Python':
if letter=='h':
pass
print('這是 pass 塊')
print('當前字母 :', letter)
print("Good bye!")
輸出結果如下圖所示:
while基本語法如下:
while expression:
while expression:
statement(s)
statement(s)
for基本語法如下:
for iterating_var in sequence:
for iterating_var in sequence:
statements(s)
statements(s)
下面以最簡單的冒泡排序算法來補充循環嵌套知識。冒泡排序是最常見到的排序算法,也是很基礎的一種排序算法。它的實現思想是:
相鄰的兩個元素進行比較,然后把較大的元素放到后面(正向排序),在一輪比較完后最大的元素就放在了最后一個位置,像魚兒在水中吐的氣泡在上升的過程中不斷變大。
def bubble_sort(list):
count=len(list)
for i in range(count):
for j in range(i + 1, count):
if list[i] > list[j]:
list[i], list[j]=list[j], list[i]
return list
#排序算法
list=[3, 91, 23, 14, 56, 9]
print("排序前:", list)
res=bubble_sort(list)
print("排序后:", res)
輸出結果如下:
你可能會疑惑bubble_sort()是什么?其實它是一個自定義函數,下面我們馬上講解。
當讀者需要完成特定功能的語句塊時,需要通過調用函數來完成對應的功能。函數分為無參數函數和有參數函數,當函數提供不同的參數時,可以實現對不同數據的處理。下面從自定義函數、系統自帶函數、第三方庫函數三個方面進行講解。
(1) 定義方法
為了簡化編程,提高代碼的復用性,可以自定義函數,函數定義如下:
def funtion_name([para1,para2...paraN]):
statement1
statement2
....
[return value1,value2...valueN]
其中:
函數調用時,形參被賦予真實的參數,然后執行函數體,并在函數結束調用時返回結果。Return語句表示退出函數并返回到函數被調用的地方,返回值傳遞給調用程序。
首先來看一個無返回值的求和函數fun1(),代碼如下:
#函數定義
def fun1(a,b):
print(a,b)
c=a + b
print('sum=',c)
#函數調用
fun1(3,4)
# 3 4
# sum=7
再來看一個包含多個參數返回的計算器函數fun2(),代碼如下,return返回五個結果。
#函數定義
def fun2(a,b):
print(a,b)
X=a + b
Y=a - b
Z=a * b
M=a / b
N=a ** b
return X,Y,Z,M,N
#函數調用
a,b,c,d,e=fun2(4,3)
print('the result are ',a,b,c,d,e)
re=fun2(2,10)
print(re)
輸出結果如下,依次返回加法、減法、乘法、除法、冪運算結果。
>>>
4 3
the result are 7 1 12 1.3333333333333333 64
2 10
(12, -8, 20, 0.2, 1024)
>>>
(2) 自定義函數參數含預定義
預設值是在自定義函數基礎上,對某些參數賦予預定義值。例如:
def fun3(a,b,c=10):
print(a,b,c)
n=a + b + c
return n
print('result1=',fun3(2,3))
print('result2=',fun3(2,3,5))
第一次調用a為2,b為3,c為預定義值10,求和輸出15;第二次調用修改了預定義值c,賦值為5,求和即為2+3+5=10。
注意:預定義值得參數不能先于無預定義值參數;同時,函數調用時,建議采用一對一賦值,也可以在函數調用中給出具體形參進行賦值,但需要注意的是在函數調用過程中(使用函數時),有預定義值的參數不能先于無預定義值參數被賦值。
Python系統內部提供了一些庫函數供大家使用,這里主要介紹最常見的四個庫函數,即str字符串庫函數、math數據庫函數、os操作系統庫函數、socket網絡套接字庫函數。Python常見內部庫函數如下:
下面代碼是這四個常見內部庫函數的具體用法,代碼如下:
# -*- coding:utf-8 -*-
#字符串庫函數
str1="hello world"
print('計算字符串長度:', len(str1))
str2=str1.title()
print('首字母大寫標題轉換:', str2)
str3='12ab34ab56ab78ab'
print('字符串替換:', str3.replace('ab',' '))
#數學庫函數
import math
print(math.pi)
num1=math.cos(math.pi/3)
print('余弦定律:', num1)
num2=pow(2,10)
print('冪次運算:', num2)
num3=math.log10(1000)
print('求以10為底的對數:', num3)
#操作系統庫函數
import os
print('輸出當前使用平臺:', os.name)
path=os.getcwd()
print('獲取當前工作目錄', path)
os.system('taskkill /F /IM iexplore.exe') #關閉瀏覽器進程
#網絡套接字庫函數
import socket
ip=socket.gethostbyname('www.baidu.com')
print('獲取百度ip地址', ip)
輸出結果如下圖所示。
Python作為一門開源語言,它支持各種第三方提供的開源庫供我們使用。其使用第三方函數庫時的具體格式為:
表示“第三方函數名.方法(參數)”。例如httplib\httplib2庫是針對HTTP和HTTPS的客戶端協議,使用httplib2庫函數之前,如果沒有安裝httplib2庫會報錯“ImportError: No module named httplib2”,如圖2.18所示。
在Linux環境中,輸入命令“easy_install httplib2”可以實現自動安裝擴展包,Windows環境下需要安裝pip或easy_install工具,再調用命令執行安裝。在后續文章會講解pip安裝工具及用法,后面章節也會介紹各種第三方庫函數實現數據爬取和分析操作。
無論如何,作者都希望這篇文章能給您普及一些Python知識,更希望您能跟著我一起寫代碼,一起進步。如果文章能給您的研究或項目提供一些微不足道的思路和幫助,就更欣慰了。作者最大的期望就是文章中的一些故事、話語、代碼或案例對您有所幫助,致那些努力奮斗的人。
遺憾,讓我們懂得完美。
逝去,讓我們不斷前行。
她夜色中的身姿是那么的美。
————————————————
版權聲明:本文為CSDN博主「Eastmount」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/Eastmount/article/details/108479670
習目標
將指定的純文本文檔轉換為HTML文件。
實現目標
在瀏覽器中打開最終生成的HMTL文件,呈現下圖的樣式。
關鍵內容
python數據挖掘,python爬蟲
練習這個項目,最好具備一些HTML基礎。
如果沒有接觸過,這里我做一下簡單的介紹。
HTML文件是我們常見的網頁文件,其中包含HTML源代碼。
HTML源代碼由HTML標簽組成,這些標簽往往是成對出現(個別除外)。
一個簡單的HTML示例代碼:
<html>
<head>
<meta charset="gbk">
<title>...</title>
</head>
<body>
<h1>一級標題</h1>
<p>我是段落內容。</p>
</body>
</html>
上方的代碼復制到一個文本文檔中,并將文件后綴改為“.html”,在瀏覽器中打開即可看到效果。
這里我們看到了一些標簽:
另外,在這個案例中我們還會用到一些標簽。
案例分析
當我們了解了HTML的結構和各種標簽的作用,接下來,我們分析一下,如何進行文檔與HTML的轉換。
1、原始文檔中的標題都是大寫英文字母開頭和英文字母結尾。
2、文檔中除了標題,就是段落和列表,段落和列表的區別是:列表中包含列表項。
3、段落中存在換行。
4、列表項(以“●”開頭)需要放置于列表中。
3、文檔中“*”之間的內容需要加重顯示。
實現過程
一、定義處理原始文檔內容的模塊(util.py)
1、定義一個生成器“lines”,能夠為原始文檔結尾添加空行。
def lines(file):
for line in file:
yield line # 生成文件的每一行內容
yield '\n' # 為文件末尾添加空行,保證最后添加到block的行能夠被生成。
為什么需要在文檔末尾添加空行,可以看下方生成器“blocks”代碼中的注釋進行理解。
2、定義一個生成器“blocks”,對原始文檔內容進行讀取,當讀取到空行,將已讀取的內容連接為內容塊并生成。
def blocks(file):
block=[]
for line in lines(file):
if line.strip(): # 如果讀取的行不是空行
block.append(line) # 添加行內容到列表
elif block: # 如果讀取空行(如果文件末尾不是空行,則不會執行下方語句塊,導致上方語句塊最后一次添加的內容無法生成。)
yield ''.join(block).strip() # 連接列表中所有的行內容
block=[]
二、定義處理文檔的主程序模塊(main01.py)
在這個模塊中,我們需要導入一些需要使用的內置模塊。
以下是主程序的具體代碼,大家可以通過注釋理解整個處理過程。
import sys, re
from util import *
print('<html><head><meta charset="gbk"><title>doc.txt</title></head><body>') # 添加HTML基本標簽
blocks=blocks(sys.stdin) # 獲取系統標準輸入
for block in blocks: # 遍歷文件內容
block=re.sub('\*(.+)\*', '<strong>\1</strong>', block) # 替換內容塊中兩個星號間的內容為加重樣式
block=re.sub(r'\n *- *(.+)', '\n<li>\1</li>', block) # 替換內容塊中以“-”開頭的內容為列表項
block=re.sub(r'([^:>])\n', '\1<br/>\n', block) # 替換內容塊中換行符“\n”為換行標簽
if re.match(r'(^[A-Z][\w ]+[A-Za-z]$)', block): # 匹配大寫字母開頭和以字母結尾的內容
print('<h1>' + block + '</h1>') # 添加一級標題標簽
elif '<li>' in block: # 如果內容塊包含列表項
print('<ul>' + block + '</ul>') # 添加項目列表標簽
else:
print('<p>' + block + '</p>') # 添加段落標簽
print('</body></html>') # 添加HTML結束標簽
當我們完成以上代碼的編寫,就可以通過命令行終端執行代碼。
python main01.py <doc.txt> doc.html
通過以上命令就能夠讓主程序讀取項目文件夾下的“doc.txt”,并且經過處理后輸出文件“doc.html”。
這個文件會自動出現在PyCharm左側文件列表中,在文件名稱上點擊鼠標右鍵,選擇瀏覽器中打開(Open in Browser),就能夠使用指定的瀏覽器進行瀏覽了。
在下一篇練習項目的教程中,我們將通過另外一種復雜的,但是具有很好擴展性的方式重新實現這個項目。
TML是一種用來描述網頁的標記性語言。學習HTML可能并不難,主要是要記一些HTML標簽和標簽代表的含義。下面PHP程序員雷雪松根據使用的情況,整理出平時常用的HTML標簽。
HTML基礎之HTML常用標簽-PHP程序員雷雪松的博客
<!--<!DOCTYPE> 是HTML5聲明,<!DOCTYPE> 必須是 HTML 文檔的第一行,位于 <html> 標簽之前。<!DOCTYPE>是指示 web 瀏覽器關于頁面使用哪個 HTML 版本進行編寫的指令。-->
<!DOCTYPE html>
<html>
<!-- head標簽是所有頭部元素的容器。head標簽內的元素可包含腳本、樣式表和提供頁面的元信息等等。以下標簽都可以添加到 head 部分:title、base、link、meta、script 以及style。頭部的內容不會顯示在瀏覽器的。 -->
<head>
<!-- 設置字符集,如果字符集不對,可能導致亂碼。一般建議utf-8國際編碼 -->
<meta http-equiv="Content-Type" content="text/html; charset=gb2312或utf-8或gbk" />
<!-- SEO相關標簽,title定義文檔的標題,百度建議一般不要超過32位,meta定義頁面關鍵詞和頁面的描述-->
<title>網頁標題</title>
<meta name="keywords" content="PHP程序員,技術博客,個人博客,雷雪松" />
<meta name="description" content="PHP程序員,雷雪松(Raykaeso)的博客是一個優秀的個人技術博客。PHP程序員雷雪松的博客記錄了Linux學習,PHP開發與編程,Web前端開發,MySQL學習和教程,NoSQL數據庫教程以及個人的人生經歷和觀點。" />
<link rel="stylesheet" type="text/css" href="main.css" />
<script type="text/javascript" src="main.js"></script>
</head>
<!-- 正文部分,所有在瀏覽器上可見的內容必須寫在body標簽內部 -->
<body>
</body>
</html>
a、布局標簽
div標簽定義文檔中的分區或節(division/section),可以把文檔分割為獨立的、不同的部分,主要用于布局。
aside標簽的內容可用作文章的側欄,<span style="color: #ff0000;">html5新增標簽</span>。
header標簽定義頁面的頭部(介紹信息),<span style="color: #ff0000;">html5新增標簽</span>。
section標簽定義文檔中的節(section、區段)。比如章節、頁眉、頁腳或文檔中的其他部分,<span style="color: #ff0000;">html5新增標簽</span>。
footer 標簽定義文檔或節的頁腳,通常包含文檔的作者、版權信息、使用條款鏈接、聯系信息等等,<span style="color: #ff0000;">html5新增標簽</span>。
article標簽規定文章獨立的其他內容,比如:標題、內容、評論,<span style="color: #ff0000;">html5新增標簽</span>。
b、文本標簽
h1-h6標簽可定義標題
p標簽定義段落
b/strong標簽加粗
em標簽來表示強調的文本,斜體
strong標簽表示重要文本
u標簽下劃線
s標簽刪除線
br標簽表示回車換行
hr標簽表示水平線
span標簽被用來組合文檔中的行內元素。
blockquote標簽表示塊引用
pre標簽可定義預格式化的文本,保持原有格式的一種標簽。
sub標簽下標,
sup>標簽上標
表示一個空格
©表示版權符
<表示<
>表示>
c、a標簽定義超鏈接,指定頁面間的跳轉。鏈接可以指向外部鏈接或者頁面內部id錨點,可以在當前頁面打開,新開窗口。
<a href="指向的鏈接地址或者網址#ID名" target="_blank|_self|_top|_parent">百度</a>
d、多媒體標簽
img標簽主要在網頁中插入圖像,可以定義圖片替換文本、顯示寬度和高度、是否帶邊框,建議等比例設置,否則圖像會變形。
<img src="圖片地址" alt="替換文本,圖片打不開的時候顯示" width="圖片寬度" height="高度" border="0" />
audio標簽定義聲音,比如音樂或其他音頻流。<span style="color: #ff0000;">html5新增標簽</span>。
<audio src="someaudio.wav">您的瀏覽器不支持 audio 標簽。</audio>
video標簽定義視頻,比如電影片段或其他視頻流。<span style="color: #ff0000;">html5新增標簽</span>。
<video src="movie.ogg" controls="controls">您的瀏覽器不支持 video 標簽。</video>
e、序列化標簽
ul和li無序列表標簽
<ul>
<li>HTML</li>
<li>JS</li>
<li>PHP</li>
</ul>
ol和li有序列表標簽,可以使用type屬性規定有序列表符號的類型。1 按數字有序排列,為默認值,(1、2、3、4);a 按小寫字母有序排列,(a、b、c、d);A 按字母大寫有序排列,(A、B、C、D)。i 按小寫羅馬字母有序,(i, ii, iii, iv);I 按小寫羅馬字母有序,(I, II, III, IV)。
<ol>
<li>HTML</li>
<li>JS</li>
<li>PHP</li>
</ol>
dl標簽定義了定義列表(definition list),dl標簽用于結合 dt(定義列表中的項目)和 dd(描述列表中的項目)。
<dl>
<dt>計算機</dt>
<dd>用來計算的儀器 ... ...</dd>
</dl>
f、表格標簽
table標簽和tr標簽,th標簽和td標簽,合并單元格。
<table width="100%" height="193" border="1" cellpadding="0" cellspacing="0" bordercolor="#FF0000" bgcolor="#000000" background="">
<tr>
<th>標題</th>
<th>標題</th>
</tr>
<tr>
<!-- 合并橫向單元格 -->
<td colspan="2" nowrap="nowrap">&nbsp;</td>
</tr>
<tr>
<td></td>
<!-- 合并縱向單元格 -->
<td rowspan="2"> </td>
</tr>
<tr>
<td height="16"> </td>
</tr>
</table>
g、表單標簽
form標簽定義提交方式、提交地址、表單字符集以及如何對其進行編碼,需要提交的表單一定要放在form標簽內。
<form id="form1" name="form1" method="post|get" enctype="multipart/form-data" action="提交到的地址"></form>
input標簽用于搜集用戶信息
<input name="userName" type="text" maxlength="5" size="100" value="asdfasdfasfd" />
密碼,輸入的字符會被掩碼(顯示為星號或原點)
<input name="pwd" type="password" maxlength="5" size="100" value="" />
文件類型的表單,上傳文件時,form表單一定要設置為enctype="multipart/form-data"
<input type="file" name="file" />
隱藏表單
<input type="hidden" name="country" value="China" />
提交
<input type="submit" name="Submit" value="提交" disabled="disabled" />
重置
<input type="reset" name="Submit2" value="重置" />
radio單選
<input name="sex" type="radio" value="1" />男
<input name="sex" type="radio" value="2" checked="checked" />女
checkbox多選
<input name="skill" type="checkbox" value="1" checked="checked" />PHP
<input name="skill" type="checkbox" value="2" />前端
<input name="skill" type="checkbox" value="2" />數據庫
<span style="color: #ff0000;">注:checked="checked"可以簡寫成checked</span>
label標簽為input元素定義標注,如果您點擊label元素文本,就會觸發此input控件。
textarea標簽,設置文本區內的可見行數和寬度
<textarea name="content" cols="30" rows="10">大段文本輸入框</textarea>
button標簽定義一個按鈕
提交按鈕
<button type="submit" value="提交">提交</button>
重置按鈕
<button type="reset" value="重置">重置</button>
select標簽和option標簽下拉列表
單選菜單列表框
<select name="user">
<option value="1">ray</option>
<option value="2" selected="selected">raykaeso</option>
</select>
多選列表下拉框,shift加鼠標單擊,可以連續選擇多個選擇,CTRL+鼠標點擊,可以點擊多個。
<select name="user" size="10" multiple="multiple">
<option value="1">雷雪松</option>
<option value="2" selected="selected">ray</option>
<option value="3">raykaeso</option>
</select>
注:selected="selected"可簡寫成selected,表示選中
a、HTML標簽和屬性是不區分大小寫的,建議HTML標簽和屬性都小寫,屬性值必須用雙引號包圍。
b、HTML標簽都是以開始標簽起始,以結束標簽終止。大部分HTML標簽都是成對出現的,稱為雙標簽,比如:p標簽、div標簽,也有的HTML標簽在開始標簽中結束的標簽,稱為單標簽,比如:hr標簽、br標簽。大多數 HTML 元素可擁有屬性,文本內容都是寫在開始標簽與結束標簽之間。
c、HTML標簽之間盡量縮進與換行,每行代碼不要過長,方便閱讀和維護。
d、HTML標簽使用必須符合標簽嵌套規則。禁止a標簽嵌套a標簽,p標簽嵌套div標簽。
e、建議不使用HTML已經廢棄的或者不贊成使用的標簽,少使用table布局、iframe框架嵌套以及flash播放器。
來源:PHP程序員雷雪松的博客 -HTML基礎之HTML常用標簽(http://www.leixuesong.cn/2045)
*請認真填寫需求信息,我們會在24小時內與您取得聯系。