Archive for the ‘ Coding ’ Category
[Python]Miniconda 的使用說明
Anaconda、Miniconda
一般用過 Anaconda 的人應該都是直接安裝 Anaconda 的「全家桶」來開發 Python 程式。維基百科記載: Anaconda 是一個開源的 Python 和 R 語言的發行版本,用於計算科學 (資料科學、機器學習、大數據處理和預測分析),擁有超過 1400 個套件...。
2023/10 最新的 Anaconda 版本為 v2023.09-0,安裝好約 4.6GB。
但如果你像我一樣,根本用不到那麼多套件,只想使用 Anaconda 中的虛擬環境、套件管理、Spyder IDE,那麼你應該選擇精簡版的 Miniconda,再另外安裝最新版的 Spyder,或其它 Python 的 IDE 來使用。
Read more
[Python]Spyder IDE 5.5 繁體中文語言套件,以及一些 Spyder 的操作說明
Spyder 中文套件
Spyder 是一個功能強大的 Python 程式語言整合開發環境 (IDE),程式內建的多國語言有支援「簡體中文」,但沒有「繁體中文」。
本來我只是打算把「簡體中文」轉成「繁體中文」就拿來使用,但卻發現簡體中文有很多不通順跟錯誤的地方!
於是我鼓起勇氣,硬著頭皮,一行一行對照著英文把它給翻譯完畢! Spyder 整合了很多套件,文字量比我想像的龐大,也有很多專業用語,費了一翻功夫才翻譯到我覺得還算滿意的成果,才敢丟出來給大家使用。
雖然說我不認為這種 IDE 需要特別翻譯成中文,但對於一些剛入門 Python 的新手,希望仍有幫助。
Read more
[Python]如何安裝 pip 套件管理程式,以及 pip 常用指令
pip 是 Python 的套件管理程式,如果你從官網下載並安裝 Python,裡面就有 pip 可直接使用。但如果你是獨立安裝的 Spyder IDE,那麼 Spyder IDE v5.4.* 所附帶的 Python 並沒有包含 pip! 在 Spyder 的 IPython 主控台執行 pip 會出現錯誤:
In []: pip list Note: you may need to restart the kernel to use updated packages. C:\Program Files\Spyder\Python\python.exe: No module named pip
PS. Spyder IDE v6.0.0 已經有包含 pip。
Read more
Visual Studio Code 的安裝說明,以及推薦的延伸模組 (Windows/Linux)
微軟開發的 Visual Studio Code (簡稱 VS Code) 是一套非常熱門的「編輯器」! VS Code 跨平台,且開放原始碼。它雖然僅是一個輕量版的編輯器,卻可經由安裝延伸模組來支援程式碼語法突顯、偵錯、自動補全、重構、Markdown...等琳瑯滿目功能,打造你夢想中的 IDE (整合開發環境)。
VS Code 預設僅支援 JavaScript、TypeScript、CSS、HTML,同樣能透過下載延伸模組來支援 Python、C/C++、Java、Perl、Go... 等其他程式語言。
[Perl]如何在 Visual Studio Code 建立 Perl 的程式開發環境 (Windows/Linux)
據說 Perl 可能是近幾年會消失的 5 種程式語言之一 (另外 4 個語言分別是 Ruby、Haskell、Object-C 跟 R)! 現在在 Visual Studio Code (簡稱 VS Code) 建立 Perl 的程式開發環境也算是幫 Perl 續一下命,大慈大悲、功德無量。
要建立好整個 Perl 的開發環境主要分為三個步驟:
- 安裝 Perl 的執行環境
- 安裝 VS Code Editor
- 在 VS Code 安裝 Perl 的延伸模組 (Extension)
[Kotlin]研究 Kotlin 的函式宣告、函式型別、匿名函式、Lambda 與高階函式
Kotlin 的「函式」是所謂的「一級函式」,支援「高階函式」的用法,也可宣告「匿名函式」及「巢狀函式」,這些都是近幾年所興起的程式語言特色。
(原本這篇文章只是要整理一下 Kotlin 的函式用法而已,沒想到愈寫愈多!!)
名詞定義
先確認是否了解什麼是表達式? 什麼是敘述式?
Expression (表達式、表示式、運算式)
- 它是一種「值」
- 會傳回結果
- 單獨存在沒有意義
- 可放在「等號」的右邊
- 可做為函式的引數 (Argument)
- 可做為函式的傳回值
- 例如: 數值、字串、布林值、null、運算後的結果、比較後的結果、匿名函式...
Statement (陳述式、敘述式、語句)
- 由會產生「動作」的程式關鍵字及語法所組成的程式碼
- 不會傳回結果
- 例如: 流程控制、迴圈、宣告、函式、類別...
其它名詞定義
- Literal: 字面值,例如: 10、3.14、true、null、'A'、"This is a book"...
- Parameter: 參數,函式「宣告」時所輸入的值,例如: fun example(參數) { }
- Argument: 引數,函式「執行」時所引用的值,例如: example(引數)
- Identifier: 識別字,命名變數、函式、類別...時所使用的文字
- Lambda: 一種匿名函式的寫法或概念
[JavaScript]如何防止自己的網站被別人以 iframe 蓋台嵌入 (與反制辦法)
「iframe (內置框架)」是用來在網頁中的特定位置嵌入另一個網頁。目前 Facebook、Google+、Twitter...等用來在網頁上顯示社群內容的社群元件,幾乎都是以 iframe 實作出來的。
原本框架是一種很好的應用,但如果是自己辛苦製作的網頁被別人的網站以 iframe 嵌入,因而出現在別人的網站裡,成為別人網站的一部份!!這種感覺就像是自己的心血被別人整碗捧走一樣!!
導回自已網站的方法
方法 1
於網頁的原始碼加入以下 Script:
<script type="text/javascript"> if( top.location != document.location ){ top.location.href = document.location.href; } </script>
以上的 Script 會檢查瀏覽器最上層視窗的網址是否與目前網頁的網址一致,如果不一致,則把最上層視窗的網址改為目前網頁的網址,就醬。
方法 2 (反制辦法)
於網頁的原始碼加入以下 Script:
<script type="text/javascript"> if( top.location != document.location ){ document.write("<h1 style='color:#FF0000'>未經授權嵌入別人的網頁是可恥的行為!!</h1>(<a href='"+document.location+"' target='_blank'>原站網址</a>)"); } </script>
以上的 Script 會檢查瀏覽器最上層視窗的網址是否與目前網頁的網址一致,如果不一致,就顯示:
未經授權嵌入別人的網頁是可恥的行為!!
(原站網址)
我比較不喜歡與人家互嗆,所以我通常是用「方法 1」啦!
[JavaScript]簡易網頁下拉選單,可支援 MouseOver 與 Click 事件
在網頁界已經有很多的「下拉選單」程式了,不過似乎都搞得太過複雜或太華麗了。
其實下拉選單的原理很簡單,一開始只是先讓「子選單」隱藏,當滑鼠移至「主選單」時再讓子選單顯示。因此,只要能控制網頁元件的 display 樣式屬性就已經成功一半了。
因為本人喜歡重新發明輪子,所以也寫了一個簡易的網頁下拉選單的程式,可以做為初學者入門的參考。
在範例的原始碼中,我儘量讓程式碼看起來淺顯易懂,並且只用 JavaScript,不使用 jQuery 或其它 Framework。我也儘量多寫一些註解,希望 JavaScript 的初學者能看得懂。
[jQuery]中文的 jQuery 教學資源
如果想學 jQuery 的話,可以從下列的教學資源開始,讀者應具有 HTML、JavaScript、CSS 的基礎。
網站
上官林傑 - ericsk (2007)
- jQuery 學習心得筆記 (1) – 前言
- jQuery 學習心得筆記 (2) – 怎麼使用 jQuery 來寫 JavaScript
- jQuery 學習心得筆記 (3) – jQuery 的事件(Event)處理
- jQuery 學習心得筆記 (4) – Ajax (上)
- jQuery 學習心得筆記 (5) – Ajax (下)
- jQuery 學習筆記 (6) - 操作 DOM 物件
- jQuery 學習筆記 (7) - 擴充 jQuery
以上這幾篇是我的 jQuery 啟蒙文章。
Read more
INFORMATION
我們解決了什麼問題?我們創造了什麼價值?
近期迴響