PIXNET Logo登入

布萊恩的創業小窩的部落格

跳到主文

歡迎光臨布萊恩的創業小窩在痞客邦的小天地

部落格全站分類:職場甘苦

  • 相簿
  • 部落格
  • 留言
  • 名片
  • 10月 08 週二 201912:12
  • 關於Python控制結構的秘笈7:List串列與其他運算子

關於Python控制結構的秘笈7:List串列與其他運算子

上篇的Python課程提到的List串列,還有許多功能呢,讓我們看看有哪些!
 
List 串列-重新定義物件
在「Python控制結構6.List串列」中,我們了解了基本的 List串列索引的概念。而今天的Python教學要告訴你,在Python 中,同一 List 串列內的任一物件(元素),不是固定的,物件是可以隨時替換的,如下:
 
GearList = ["BCD", "調節器", "蛙鞋", "潛水面罩", "氣瓶", "潛水衣"]
GearList[5] = "Dry Suit"
print(GearList)
上述範例結果為:
['BCD', '調節器', '蛙鞋', '潛水面罩', '氣瓶', 'Dry Suit']
是否注意到最後一個物件(索引編號:5)從 "潛水衣" 變成了 "Dry Suit"?
List 串列-print時增加、複製物件
在 Python 中,也可以使用運算子「+」、「*」,來使 List 串列被輸出時,可以增加、複製物件。如下面例子所示:
GearList = ["BCD", "調節器", "蛙鞋", "潛水面罩", "氣瓶", "潛水衣"]
print(GearList+["潛水電腦"])
print(GearList*2)
結果如下(以一行指令、一行輸出結果的方式表示):
>>> print(GearList+["潛水電腦"])
['BCD', '調節器', '蛙鞋', '潛水面罩', '氣瓶', '潛水衣', '潛水電腦']
>>> print(GearList*2)
['BCD', '調節器', '蛙鞋', '潛水面罩', '氣瓶', '潛水衣', 'BCD', '調節器', '蛙鞋', '潛水面罩', '氣瓶', '潛水衣']
以上範例的結果,第一個程式碼在輸出時增加了"潛水電腦";第二個輸出的結果為原有程式碼的兩倍。
 
檢查 List 串列表中的物件
我們可以在 print 時,運用「in」運算子來檢查指定的物件(元素)是否在串列中。若有,則回傳為 True;反之為 False。寫法為如下方範例所示:
Fruits = ["芭樂", "榴蓮", "柳丁", "草莓"]
print("榴蓮" in Fruits)
print("草莓" in Fruits)
print("牛肉" in Fruits)
結果為:
True
True
False
以上Python範例,還可以搭配「not」運算子【not 運算子請參考:Python控制結構3.布林邏輯:and,or,not】來檢查指定的物件(元素)是否「沒有」在串列中。若沒有,則回傳為 True;有的話則為 False。
Fruits = ["芭樂", "榴蓮", "柳丁", "草莓"]
print(not "榴蓮" in Fruits)
print("榴蓮" not in Fruits)
print(not "草莓" in Fruits)
print("牛肉" not in Fruits)
結果為:
False
False
False
True
除了上述介紹的 List 串列索引功能之外,你也可以活用各種函數來增加索引中的物件或是計算索引中的物件數量【請參考:Python控制結構8.List-append,insert,index,len函數】。
List串列尚可搭配 for 迴圈,讓 List串列中的所有物件都可以被 Python 程式執行!【請參考:Python控制結構10.for迴圈】
 
延伸閱讀看這裡:

不能錯過的Python控制結構:(8)List串列的函數

不能錯過的Python控制結構:(9)Range數列生成

不能錯過的Python控制結構:(10)for迴圈

只要學了Python課程,你也有可能成為台灣之光!


網路行銷課程首部曲-教你簡單提高網頁訪客量!


暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~


NOWnews 今日新聞

(繼續閱讀...)
文章標籤

布萊恩的創業小窩 發表在 痞客邦 留言(0) 人氣(11)

  • 個人分類:各式程式語言讓你挑!
▲top
  • 10月 07 週一 201908:20
  • 關於Python控制結構的秘笈6:List串列

關於Python控制結構的秘笈6:List串列

Python的Listt串列,它能提供的功能是啥?又該如何使用?
Python教學必教的:List 串列
List 串列是 Python 中表示資料的方法(資料結構),有順序地將一系列的物件集合在一起,具有索引特性。
 
List 串列的語法,是用「[]」包覆一系列的物件,每個物件(元素)均使用逗號「,」區隔,如以下例子所示:
GearList = ["Scuba BCD", "Scuba Diving Regulator", "Diving Fins", "Diving Mask", "Scuba Tank", "Wet Suit"]
print(GearList[0])
print(GearList[1])
print(GearList[2])
print(GearList[3])
print(GearList[4])
print(GearList[5])
上述範例結果為:
Scuba BCD
Scuba Diving Regulator
Diving Fins
Diving Mask
Scuba Tank
Wet Suit
注意:List 串列的語法中,第一個物件(元素)的索引號為 0,而不是 1。
另外,Python教學也告訴我們,想創建沒有物件的 List 串列?當然也可以!請看以下所示:
empty_list = []
print(empty_list)
結果如下:
[]
List 串列中所包含的元素種類眾多,有字串(string)、整數與浮點數、變數等,甚至在包含另一個 List 串列(也是以「[]」包覆)。一個 List 串列可以囊括不同種類的物件,如下所示:
變數 = 3
一堆雜物 = ["string", 0, [1, 2, 變數], 4.56]
print(一堆雜物[1])
print(一堆雜物[2])
print(一堆雜物[2][2])
以上範例結果如下所示:
0
[1, 2, 變數]
3
上述的 「print(一堆雜物[2][2])」意思為輸出列表中索引「2」的物件列表中的索引「2」物件,該物件為「變數」,而變數等於三,故 print(一堆雜物[2][2]) 的結果為「3」。
 
字串 (strings) 類型也可以逐字被索引
Python 字串類型的物件,也可以像 List 串列一樣,逐字被索引。我們可以輸入 print(str[n]) 指令,讓他抓出字串元素的第 n+1 個字。【關於字串,請參考:Python基本概念第四課-Strings字串】
 
在字串中,第一個字母的索引號也是 0,而不是 1。
str = "潛水用具包含 BCD、水肺等."
print(str[0])
print(str[1])
print(str[6])
print(str[9])
print(str[10])
print(str[14])
結果如下(以一行指令、一行輸出結果的方式表示):
>>> print(str[0])
潛
>>> print(str[1])
水
>>> print(str[6])
>>> print(str[9])
D
>>> print(str[10])
、
>>> print(str[14])
.
由此可見,無論是全形、半形、中文、英文、空格、標點符號等等,全部在 Python 程式裡面都可以被索引出來!
學會了 List 串列,可以應用的地方非常廣。無論是本章介紹的基本索引功能,也有進階的索引用法【請參考:Python控制結構7.List串列與其他運算子的應用】,除此之外,你也可以活用各種函數來增加索引中的物件或是計算索引中的物件數量【請參考:Python控制結構8.List-append,insert,index,len函數】
List串列尚可搭配 for 迴圈,讓 List串列中的所有物件都可以被 Python 程式執行!【請參考後面的Python教學:Python控制結構10.for迴圈】
 
相關閱讀推薦:

關於Python控制結構的秘笈7:List串列與其他運算子

關於Python控制結構的秘笈8:List串列的函數

關於Python控制結構的秘笈9:Range數列生成

Python工程師染病?居然是跟工作息息相關的!!
網路行銷的7大秘訣(共四集)-2.SEO與EDM

暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~


NOWnews 今日新聞

(繼續閱讀...)
文章標籤

布萊恩的創業小窩 發表在 痞客邦 留言(0) 人氣(52)

  • 個人分類:各式程式語言讓你挑!
▲top
  • 10月 05 週六 201905:19
  • 關於Python控制結構的秘笈5:while迴圈

關於Python控制結構的秘笈5:while迴圈

你知道其實Python的while迴圈跟if條件判斷式超像的嗎?今天就告訴你到底哪裡不一樣!
關於Python-while 迴圈
Python 的 if 條件判斷式【請參考上篇的Python教學:Python控制結構2.if else條件判斷(1)】,若評估為 True【請參考:Python控制結構1.布林值Boolean-True or False?】 的話,就會執行一次;反之則不執行。
Python 的 while 迴圈跟 if 條件判斷式相似,但是不同的是,它不只執行一次。只要條件成立,它就會不斷地重複執行。就算是有其中一段代碼被評估為 False,下一段代碼仍會被執行。
while 迴圈構成,包含了 。
以下範例的 while 迴圈中有一個變數「i」,初始值為「1」;更新值(又稱為調整值)為「i+1」;讓迴圈結束的條件為「i <=5」。
這次Python教學給你以下範例,讓 i 的從初始值開始,程式每執行一次,i 就等於上一回合的數值再「+1」一次,直到 i 等於 5 為止停止,寫法如下:
i = 1 #初始值
while i <=5: #讓迴圈結束的條件
print(i)
i = i + 1 #更新值 (調整)
則結果為:
1
2
3
4
5
>>>
while迴圈的「infinite loop(無限循環)」
Python 的 while 迴圈中,有一種被稱作「infinite loop(無限循環)」,當條件(為True)成立時,該程式就會永不停止地重複執行。
「infinite loop(無限循環)」的範例如下:
while 7==7:
print("這是無限循環迴圈")
結果,「這是無限循環迴圈」這行字就會不斷的重複顯示。
若你真的受不了,你可以按鍵盤快速鍵「Ctrl-C」以阻止它繼續重複顯示。
以下也是無限循環迴圈的另一個例子,來看看它的結果如何吧!
x=1
>>> while x>0:
print(x)
x+2
結果馬上會跳出一堆數字,且不斷的在跳出中。後出來的數字,都是前一個數字 +2 的結果。真的受不了,就按鍵盤快速鍵「Ctrl-C 」跳出吧!
跳出while迴圈:break
要結束 while 迴圈循環,就使用 break 敘述。在迴圈循環時,一遇到 break 敘述,就會讓迴圈立即停止循環。範例如下:
i = 1 #初始值
while 1==1:
print(i)
i = i + 1 #更新值 (調整)
if i >= 5: #讓迴圈結束的條件
print("Breaking")
break
>>>
上述的代碼,意思若「1 等於 1」的敘述為真,則 i 就從 1 開始輸出,之後程式跑到「i = i + 1」,i 就以 i+1 的形式繼續循環輸出,直到 i 為「5」時,就輸出「Breaking」並結束循環。因此這段 Python 程式的執行結果為:
1
2
3
4
Breaking
繼續while迴圈:continue
Python 的 while 迴圈中,有一個與 break 敘述相對的,就是 continue —— 跳回到迴圈的頂部繼續循環,而不是停止循環。
i = 1 #初始值
while True:
print(i)
i = i + 1 #更新值 (調整)
if i == 5:
print("Skipping 5")
continue
if i == 7: #讓迴圈結束的條件
print("Breaking")
break
上述的 Python 代碼,意思若「1 等於 1」的敘述為真,則 i 就從 1 開始輸出,之後程式跑到「i = i + 1」,i 就以 i+1 的形式繼續循環輸出,直到 i 等於「5」時,就輸出「Skipping 5」並且跳回到迴圈的頂部「print(i)」繼續從「5」循環,直到 i 等於「7」時輸出「Breaking」並結束循環。因此這段 Python 程式的執行結果為:
1
2
3
4
Skipping 5
5
6
Breaking
(繼續閱讀...)
文章標籤

布萊恩的創業小窩 發表在 痞客邦 留言(0) 人氣(6)

  • 個人分類:各式程式語言讓你挑!
▲top
  • 10月 04 週五 201913:45
  • 今天的Python控制結構課程(4)探討運算子優先順序!

今天的Python控制結構課程(4)探討運算子優先順序!

Python控制結構進入到第四課,這章節我們要講的是運算子優先順序! 
 
運算子優先順序(operator precedence)在包含 Python 及其他的程式語言都是很重要的概念。它是數學運算順序(如先乘除後加減)概念的延伸,並包含其的他運算子如布林運算子等。
在Python課程提供的表格中,列出了 Python 的運算子的優先順序,優先順序由高至低如下:


**
指數 (最高優先順序),範例:2**3 = 8


~<
補數


+
-

正數
負數


*
/
//
%

乘
除
地板除法(只取整數的除法)
餘數


+
-
加法
減法



>>
<<
右移
左移


&
與


^
XOR


|
OR


in
not in
is
is not
>
<
>=
<=
!=
==
比較運算子


not x
布林值:不(NOT)


and
布林值:和(AND)


or
布林值:或(OR)


Python 的運算子的優先順序,可由以下例子練習:
16 - 2 * 5 // 3 + 1
結果如下:
14
解析:上例首先計算 2 * 5 得到 10,然後是 10 // 3 得到值 3 (此為忽略餘數的地板除法,所以無小數點),然後計算 16 - 3 + 1 得到 14。
又如下例,結果會如何?
x = 4
y = 2
if not 1 + 1 == y or x == 4 and 7 == 8:
print("Yes")
elif x > y:
print("No")
結果顯示如下:
No
(繼續閱讀...)
文章標籤

布萊恩的創業小窩 發表在 痞客邦 留言(0) 人氣(846)

  • 個人分類:各式程式語言讓你挑!
▲top
  • 10月 03 週四 201910:14
  • 關於Python控制結構的秘笈3:布林邏輯

關於Python控制結構的秘笈3:布林邏輯

 
Python的三種Boolean運算子,如何把它們用的淋漓盡致又恰到好處?來這篇就來對啦!
當 Python 的 if 條件判斷式(需要複習if...else條件判斷式?請看這篇!)變得更複雜,有超過一種的狀況時,就使用 Boolean Logic 布林邏輯式。
Python 的 Boolean 運算子包含:and(和)、or(或)、not(不是)。
 
今天的Python教學就來介紹它們!
Python 的 and 運算子:
包含兩個條件參數,當兩個條件都成立時,才會被評估為「True」。但記住!只要其中有一個不成立,就為「False」。【參考:Python控制結構1.布林值Boolean-True or False?】
>>> bool( 1 == 1 and 2 == 2 )
True
>>> bool( 1 == 1 and 2 != 2 )
False
>>> bool( 1 < 1 and 2 >= 2 )
False
>>> bool( 1 < 1 and 2 != 2 )
False
下方 Python 程式例子,就是為只有符合「年滿18歲」及「低消超過180元」才會輸出「welcome」的例子
age=21
money=500
if age >= 18 and money >= 180:
print("welcome")
結果顯示如下:
>>>
welcome
>>>
Python 的 or 運算子:
包含兩個參數,只要其中有一個條件成立,就會被評估為「True」。兩個條件都不成立才會被判定為「False」
>>> bool( 1 == 1 or 2 == 2 )
True
>>> bool( 1 != 1 or 2 == 2 )
True
>>> bool( 1 != 1 or 2 != 2)
False
下方例子為只要符合「年滿65歲」或是「你付超過3000元」兩條件任一種,就會輸出「You'll get a Wacken Open Air 2020 ticket」的例子
age=77
money=0
if age >= 65 or money >= 3000:
print("You'll get a Wacken Open Air 2020 ticket")
結果顯示如下:
>>>
You'll get a Megadeth concert ticket
>>>
Python 的not 運算子:
只有包含「一個」條件參數,條件成立(就是合乎邏輯)就會顯示為「False」。條件不成立才會被判定為「True」
>>> bool( not 1 == 1 )
False
>>> bool( not 1 != 1 )
True
下方例子為只要不符合「年滿18歲」就會顯示「未滿18歲不得進入」的例子
age=14
if not (age>=18):
print("未滿18歲不得進入")
結果顯示如下:
>>>
未滿18歲不得進入
>>>
(繼續閱讀...)
文章標籤

布萊恩的創業小窩 發表在 痞客邦 留言(0) 人氣(5)

  • 個人分類:各式程式語言讓你挑!
▲top
  • 10月 02 週三 201908:12
  • 關於Python控制結構的秘笈2-2:else的條件判斷

關於Python控制結構的秘笈2-2:else的條件判斷

 
Python的另一個條件判斷是else,它又該如何和上篇提到的if一起使用呢?
上一篇文章:Python控制結構2.if else條件判斷(1),我們已經知道 if...else 的 if 的用法,這一篇當然就來講述 else 的功能!
Python 的 if...else 條件判斷式,除了單純的 if 設定一組條件之外,還可加上 else...if 或 else 增加條件。而每一個 if,都可以設定不同的條件。
例如:在上Python教學時,你要想要試著寫出一個Python程式,並判斷你所輸入的樂團名稱「Megadeth」,是否在四大鞭擊金屬樂團之列。則程式如下例所示:
bandname = "Metallica"
if bandname == "Megadeth":
print("無庸置疑,Megadeth 無論在歌曲的編制、樂句的表現與技巧的專精,都勝過其他的鞭擊金屬樂團。")
else:
if bandname == "Metallica":
print("Metallica 也是四大鞭擊金屬樂團之一。但是最好的是前四張專輯")
else:
if bandname == "Anthrax":
print("Anthrax 也是四大鞭擊金屬樂團之一。但是地位不如 Megadeth 與 Metallica")
else:
if bandname == "Slayer":
print("Slayer 確實是四大鞭擊金屬樂團之一。但是我對他們不熟")
else:
print("你輸入的樂團名稱不在四大鞭擊金屬樂團之中")
結果顯示如下:
>>>
Metallica 也是四大鞭擊金屬樂團之一。但是最好的是前四張專輯
>>>
以上Python的例子,你可以把樂團名稱換成 "Megadeth"、"Anthrax"、"Slayer" ,當然也可以換成其他的名稱試試看喔!
else if 可以縮寫成「elif」。承上方的例子,要是在Python教學中,把所有的 else if 都改成「elif」,則結果就會如下例所示(下例也把樂團名稱改成 "Megadeth"):
bandname = "Megadeth"
if bandname == "Megadeth":
print("無庸置疑,Megadeth 無論在歌曲的編制、樂句的表現與技巧的專精,都勝過其他的鞭擊金屬樂團")
elif bandname == "Metallica":
print("Metallica 也是四大鞭擊金屬樂團之一。但是最好的是前四張專輯")
elif bandname == "Anthrax":
print("Anthrax 也是四大鞭擊金屬樂團之一。但是地位不如 Megadeth 與 Metallica")
elif bandname == "Slayer":
print("Slayer 確實是四大鞭擊金屬樂團之一。但是我對他們不熟")
else:
print("你輸入的樂團名稱不在四大鞭擊金屬樂團之中")
結果顯示如下:
>>>
無庸置疑,Megadeth 無論在歌曲的編制、樂句的表現與技巧的專精,都勝過其他的鞭擊金屬樂團
>>>
承上例,我們把第一行的 「bandname = "Megadeth"」改成「bandname = "Anthrax"」,結果顯示就會如下:
>>>
Anthrax 也是四大鞭擊金屬樂團之一。但是地位不如 Megadeth 與 Metallica
>>>
承上例,我們再把第一行的 「bandname = "Anthrax"」改成「bandname = "Slayer"」結果顯示如下:
>>>
Slayer 確實是四大鞭擊金屬樂團之一。但是我對他們不熟
>>>
承上例,我們再把第一行的 「bandname = "Slayer"」,將 Slayer 改成隨便一個你知道的樂團名稱,也許結果顯示就會如下:
>>>
你輸入的樂團名稱不在四大鞭擊金屬樂團之中
>>>
(繼續閱讀...)
文章標籤

布萊恩的創業小窩 發表在 痞客邦 留言(0) 人氣(2)

  • 個人分類:各式程式語言讓你挑!
▲top
  • 10月 01 週二 201907:55
  • 關於Python控制結構的秘笈2-1:if的條件判斷

關於Python控制結構的秘笈2-1:if的條件判斷

 
Python的if和else條件判斷還是搞不清楚嗎?今天分兩篇讓你一次探究清楚!
聽過Python教學的課,都會知道:在 Python 中,若有滿足特定的條件,則可以使用 if 指令。要是滿足了某個指定的條件(即是布林值為「True」,若不懂何謂布林值,請看這篇介紹:Python控制結構1.布林值Boolean-True or False?),則這個程式的片段會被執行。反之,就是不執行囉。
if 指令的語法如下
if <條件>:
執行的狀況
範例:如果 x 小於 0 則輸出「x 是負數」,而不論 x 的值為何,最後都會輸出「此Python程式結束」。
x=-10
if x < 0:
print("x 是負數")
print("此Python程式結束")
結果顯示如下:
>>>
x 是負數
此Python程式結束
>>>
呈上例,若 x=10 的話,則結果只會顯示「此Python程式結束」。
有時,if 條件式裡還會有另一組 if 條件式,就形成多層 if 條件式的架構。這種情況稱為「巢狀 if 條件式」。巢狀 if 條件式就好像設定多道關卡,資料必須經過每一道關卡的檢驗。滿足了第一關的條件,才會到第二關。這是用來檢視是否滿足多種條件的方法。如下例,如果要判斷一個人是否可以觀看輔導級、甚至限制級的電影,必須先知道他的年齡。我們把輔導級的年齡設定為 15 歲,限制級的年齡設定為 18 歲。若能觀看輔導級,不見得可以看限制級的電影;但若能看限制級的電影,則輔導級電影也可以看。今天來了一個 17 歲的人,正從以下電影考慮挑一部電影看。他們是:限制級的「藍波:最後一滴血」和輔 15 級的「無間行動」。他的年齡可以看哪一部電影呢?請參考以下程式碼:
age = 17
if age >= 15:
print("已滿15歲,可以觀賞輔15級的電影")
if age <18:
print("未滿18歲不得觀賞限制級的電影")
結果顯示如下:
已滿15歲,可以觀賞輔15級的電影
未滿18歲不得觀賞限制級的電影
因此,他必須放棄「藍波:最後一滴血」這部片子,而選擇「無間行動」。
最後再跟你說一個Python教學一定會提醒你的:if 條件判斷式,可以不只有一種條件。但若你想要新增條件,就必須要加「else」。別急別慌!else 的用法我們將在Python控制結構2.if else條件判斷(2)中說明唷!
 
相關閱讀推薦:


關於Python控制結構的秘笈2-2:else的條件判斷


關於Python控制結構的秘笈3:布林邏輯

關於Python控制結構的秘笈4:運算子優先順序一覽



前端工程師一定要知道的CSS邊框屬性解釋一次通通告訴你!!


網路行銷課程教你辨別黑白帽SEO


暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~


NOWnews 今日新聞

(繼續閱讀...)
文章標籤

布萊恩的創業小窩 發表在 痞客邦 留言(0) 人氣(68)

  • 個人分類:各式程式語言讓你挑!
▲top
  • 9月 30 週一 201906:59
  • 關於Python控制結構的秘笈1:布林值

關於Python控制結構的秘笈1:布林值

 
 
 
 
 
 
 
 
 
 
第一篇的Python控制結構篇就要帶布林值啦!何時回覆True?何時回覆False?再也不用瞎猜啦!
 
Python 程式語法中的其中一種,就是布林代數 (Boolean algebra),而Python教學就會告訴你,它布林型態為 bool。
說到布林值(Boolean value),它僅有兩種: True 和 False。
而布林值可以藉由關係運算子 (Relational operator) 來建立。例如:兩個等號 == 用來比較兩個值,如果相等,回覆 True,否則就回覆 False:
>>> Megadeth = True
>>> bool(Megadeth)
True
>>> bool(2==3)
False
>>> bool(3==3)
True
>>> bool("Hangar 18"=="Hangar 18")
True
>>> bool("Return to Hangar"=="Return to Hangar")
True
與兩個等號「==」相反的關係運算子「!=」,也是用來比較兩個值,如果「不」相等就回覆 True,否則回覆 False:
>>> bool(2!=3)
True
>>> bool(2!=2)
False
>>> bool("Megadeth"!="Megadeth")
False
>>> bool("megadeth"!="Megadeth")
True
Python教學中應該都有提到,在 Python 中,大小寫是不能視為相等的。所以上方最後兩個例子雖然字母都一樣(都為 “Megadeth”),但是後一個例子的開頭字母大小寫不同,所以就被視為「不」相等。
比較兩個數值(不限整數或是浮點數)大小的運算子「>(大於)」、「<(小於)」、「>=(大於或等於)」、「<=(小於或等於)」
請看以下例子:
>>> bool(2<3)
True
>>> bool(2>2)
False
>>> bool(2<3.0)
True
>>> bool(2.0>2)
False
>>> bool(2.0>=2)
True
>>> bool(2.0<=3.9)
True
(繼續閱讀...)
文章標籤

布萊恩的創業小窩 發表在 痞客邦 留言(0) 人氣(52)

  • 個人分類:各式程式語言讓你挑!
▲top
  • 9月 27 週五 201911:00
  • SEO攻略-分析競爭者的網站是首要之務!(下)競爭者網站的數據

SEO攻略-分析競爭者的網站是首要之務!(下)競爭者網站的數據

做SEO時該如何分析地人的網站數據?今天一步步教怎麼"深入敵營"!
SEO 優化,可說是與其他網站競爭排名的比賽。在前一篇文章【SEO前,先分析競爭者的網站(一)誰是你的競爭者?】中,我們已經了解到:找出誰是自己網站的競爭對手的方法。接下來,我們就要分析這些網站的各項重點數據。方法如下:
 
第二步:分析競爭者網站的數據
一、網站速度
網站的載入速度,會影響到搜尋引擎排名。要了解對手的網站速度,我們可在 Google 提供的免費線上工具「PageSpeed Insights」中鍵入對手網站的 URL,即可獲得概略的數據以及改善建議。
二、使用者習慣經由哪種管道來接觸這個網站?
在你完全不知道如何增加點閱率時,就可以參考對手多是經由哪些管道,來吸引使用者點入。在此,我們可以使用 SimilarWeb 來查看。承第一步的例子,你想知道使用者都是透過何種管道進入東森、UDN 等新聞網站,使用 SimilarWeb 查看後結果如下:
由上圖可以看出,UDN 的讀者來源,大部分來自 Search (搜尋引擎)輸入特定關鍵字後,進到 UDN 的網頁;而東森新聞雲的讀者最多都是從 Facebook 等 Social 社群網站的連結進來。
參考兩者,現在回到你自己經營的新聞網站,要增加點閱數,你有兩件方向可以做:做好 SEO 以增加 Search 流量以及經營 Facebook、IG 來增加 Social 流量。
流量管道的資料表現,會因著產業的不同而有著不同的流量結構。你可以在將預算花下去之前,先了解對手有在經營哪些流量管道。
假如所有的對手都在做 SEO,而比較不偏重於 Facebook 的經營時,你是否該跟隨他們加入 SEO 的戰場,殺個你死我活,還是先專注在社群經營,走出一條新路? 另一方面,若情境相反,今天你對手都沒有在做 SEO(恰巧跟你產業有關的關鍵字都有一定的搜尋量時),你就可以考慮一下是否可靠著 SEO 找到藍海。
若你的產業是真的真的非常 Social 導向的, 你就可以觀察頂尖對手的 FB 經營策略(廣告投遞模式、辦過哪些活動、多久貼文一次等等),並且看他們的粉絲團按讚數以及貼文按讚數、哪種貼文獲得比較好的共鳴、參考他們是如何跟粉絲互動等等。
三、反向連結流量與資料
建立反向連結,跟你的公關策略有關:你的網站該找哪個 KOL(意見領袖,如部落客、網紅、名人等等) 合作?該與哪個媒體合作?該與哪家廠商進行異業合作?
觀察對手的反向連結分析,除了可以偷偷了解對手的網站常在哪些網站上曝光外,還可得知對手的公關策略耶!假如你要經營醫美的網站,就可以從現有知名醫美品牌的反向連結,得知他們常與哪些 KOL 合作、經查在哪些媒體曝光等等。
目前市面上你可以看到的 SEO 工具中,反向連結分析做的最透徹的,就是新加坡的 Ahrefs,可是要先付費才能使用他們的 SEO 工具。
而 Moz 的 Open Site Explorer 提供了免費的反向連結查看服務。以知名醫美業者「星X醫美」的官網為例,結果如下圖所示:
如上圖所示,我們得知許多 URL 都是來自眾多部落客的痞客邦 StyleMe 連結。我們一一點擊這些網站,得知有哪些部落客、哪些媒體與這些競爭對手合作,參考對手並擬定自己的公關策略。
四、流量
一旦了解競爭網站的流量,就可以了解對手的實力大概在哪裡。流量越高,則競爭度當然越高。如下圖,SEO 人員可藉由 SimilarWeb 等工具了解競爭對手的網站流量大小。
五、關鍵字
藉由參考對手優化了哪些關鍵字,他們網站的投放、對於自己網站的關鍵字計畫,肯定會有很大的幫助。 SimilarWeb 的 Top Keywords 功能也顯示出大多數的人是藉由哪些關鍵字到目標網站,如同下圖所示:
(繼續閱讀...)
文章標籤

布萊恩的創業小窩 發表在 痞客邦 留言(0) 人氣(21)

  • 個人分類:網路行銷課程.SEO優化
▲top
  • 9月 26 週四 201906:14
  • SEO攻略-分析競爭者的網站是首要之務!(上)誰是你的競爭者?


 
 
想要SEO為你的網站帶來效果?先找到你的競爭者才是首要之務!
SEO 優化,可說是與其他網站競爭排名的競爭。因此你的SEO 必須要先了解競爭網站的狀況,才會知道如何準備這場比賽。
然而,有許多 SEO 人員在忙碌之中,粗心忽略了對競爭對手的分析。
 
至於競爭網站有哪些呢?其實,只要該網站被 Google 收錄的關鍵字是與你重疊的,都可以算是你的競爭網站。而這些競爭網站有可能是你的同業對手,也有可能不是。
分析競爭對手的目的,是了解他們的 SEO 操作手法、優點與弱點。但是千萬別把他們當成自己的門檻、或是完全模仿複製,例如某些老闆會缺乏遠見地說:「同業的網站都沒有 RWD,我們也就先不用 RWD 了,只是多此一舉罷了!」。
另外在現實生活中,我們也經常看到:同個行業,不同商家,但是網站、文案都很類似,人們往往分不清楚哪個網站是哪家公司的。
第一步:誰是我的競爭者網站?
要找出競爭網站很容易,我們可以從這些方向著手:
一、現實生活中的兢爭對手網站
二、經由 Google 等搜尋引擎中輸入關鍵字,排名在你附近或是你前面的網站
三、被收錄於 Similar Web 或 Alexa 等流量排行榜中你的同業網站。
例如,你的網站是新聞網,則現實生活中的對手可能是東森、中時、三立、UDN 等新聞網;而經由 Google 搜尋「國內新聞」、「國外新聞」等關鍵字,排名在你前面的新聞網站,大多都可說是你的競爭對手(當然也有例外狀況:如路線跟你不同的傳媒網站,像是科技類傳媒、重機傳媒等)。
另外,你還可以從 SimilarWeb、Alexa 等流量排行榜中,擷取出的與你網站同類型的新聞網站,將之視為競爭對手。

1.jpg


SEO 可參考 SimilarWeb 的流量排行榜,找出競爭對手網站
找出了你的競爭對手之後,下一步就要接著分析他們的重點數據,知己知彼,才能百戰百勝,擬定出自己的 SEO 作戰策略!至於有哪些重點數據要分析呢?請見下篇【SEO前,先分析競爭者的網站(二)分析競爭者網站的數據】
 
相關閱讀推薦:

SEO攻略-分析競爭者的網站是首要之務!(下)競爭者網站的數據


新創業都應該要重視SEO的七個重點(1)它帶來客戶行為資料

SEO優化:教你怎麼善用四個語意標記(4)RDFa

運用python課程智慧的它,讓你在家享受全世界


前端工程師菜鳥秘笈:學習路線圖總整理



暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~

達內教育開幕 培養台灣IT人才進入全球企業


 
 
 
(繼續閱讀...)
文章標籤

布萊恩的創業小窩 發表在 痞客邦 留言(0) 人氣(2)

  • 個人分類:各式程式語言讓你挑!
▲top
«1...40414266»

個人資訊

布萊恩的創業小窩
暱稱:
布萊恩的創業小窩
分類:
職場甘苦
好友:
累積中
地區:

熱門文章

  • (161)從達內教育評價事件來看Geego(奇科?)IT培訓評論的謬誤
  • (79)人工智慧和生化人科技下的底層生活-"戰鬥天使:艾莉塔"為你呈現
  • (78)有了Python課程,癌細胞看你往哪跑!
  • (223)前端工程師抄捷徑!今天把網頁顏色代碼直接整理給你!
  • (29)人工智慧先驅逝世,你該知道他的故事!-Nils Nilsson
  • (138)輕鬆入門前端工程師的HTML5課程(4)元素排版-下
  • (1,224)常常聽到的Java,原來真的是咖啡名字!!?
  • (141)前端工程師的必備品Emmet(四)快速設定顯示文字與自訂屬性值
  • (38)人工智慧對未來的衝擊,我們該如何應對?-張忠謀給的四個建議
  • (7,342)Python基礎功不可少-dir()與help()的使用

文章分類

  • UI.UX設計五四三 (25)
  • 前端工程師就是我! (74)
  • 達內教育評價,不會讓你失望 (14)
  • 各式程式語言讓你挑! (135)
  • 網路行銷課程.SEO優化 (86)
  • IT評比 (2)
  • IT人的數位生活 (260)
  • 未分類文章 (1)

最新文章

  • 全球首屆的元宇宙時裝周盛會,落幕後的反響是什麼?
  • 烏克蘭運用人工智慧以辨別戰爭罹難者,是好還是壞?
  • 2022年的人工智慧七大突破就是這些了!!!??
  • Google迫使YouTube Vanced中止開發啦!!!
  • 有關Python跟Java的差別,一篇文章就讓你懂!
  • 前端工程師網頁開發神器Emmet,沒聽過?今天介紹給你!
  • 在元宇宙受傷,你會感受到痛??這次該不會是玩認真的吧?
  • 怕自己成為股市小韭菜嗎?人工智慧操盤手有機會拯救你!!
  • 是什麼原因,讓日本飯店狠下心裁了兩百多個人工智慧!??
  • 透過診斷視網膜病變,人工智慧成功降低糖友的失明風險!

動態訂閱

文章精選

文章搜尋

誰來我家

參觀人氣

  • 本日人氣:
  • 累積人氣: