Python 簡介 林子傑.

Slides:



Advertisements
Similar presentations
發現生命的力量 — 陳樹菊阿嬤,來了 … 《不凡的慷慨》書籍賞析. 你所知道的陳樹菊  2010 《富比世》雜誌亞洲慈善英雄! 2010 美國《時代》雜誌最具影響力百大人物! 《讀者文摘》亞洲英雄!  導演李安﹕「她的生活稱不上富裕,仍然陸續捐贈 了將近一千萬台幣幫助數個不同的單位 … 」
Advertisements

陳穎平 — 資訊科學與工程研究所. Outline 從核心理念出發 談在現今潮流下我所採取的教學方式 溫馨提醒:即將切換至「高橋流簡報法」模式 April 27, 2015 陳穎平 : 教學經驗分享 2.
单元二:面向对象程序设计 任务二:借书卡程序设计.
第一單元 建立java 程式.
董笑菊 电子信息与电气工程学院 计算机科学与工程系
Introduction to C Programming
第四章 基本控制结构的程序设计.
计算机编程导论 -Python语言 第5讲 图形编程 讲课教师:常姗
计算机与程序.
第4章 循环结构 程序设计2 本章主讲 赵家刚 计算机编程导论.
JAVA 程式設計 資訊管理系 - 網路組.
實習與教檢.教甄 阮瑋飴.
程序设计思想与方法入门篇 庄天红.
第五組 做16歲、兩首詩 楊郁珊 陳怡蓁 吳政穎 洪珮綺.
第二章 JAVA语言基础.
TQC+ JAVA全國教師研習會 PLWeb 程式設計練習平台 簡介.
Ch07 PHP程式基礎 網頁程式設計.
建立Android新專案 建國科技大學 資管系 饒瑞佶 2010/10.
C# 程式設計 第一部分 第1-4章 C# 程式設計 - 南華大學資管系.
程設一.
程式設計實作.
程式語言的基礎 Input Output Program 世代 程式語言 第一世代 Machine language 第二世代
臺北市立大學 資訊科學系(含碩士班) 賴阿福
程式設計概論 1.1 程式設計概論 程式語言的演進 物件導向程式 程式開發流程 1.2 C++開發工具
Java簡介.
Python入门培训演示 系统测试部 叶华 文件级别:公开
PHP 5 入門基礎 第一個PHP 程式 PHP 資料型態.
Shell Script 程式設計.
本單元介紹何謂變數,及說明變數的宣告方式。
生物資訊程式語言應用 Part 3 Perl Language.
R教學 安裝RStudio 羅琪老師.
ASP.NET基本設計與操作 建國科技大學 資管系 饒瑞佶 2007年.
Python ——谁说简洁就不能强大? Gingko Studio.
安裝JDK 安裝Eclipse Eclipse 中文化
建立Android新專案 Android智慧型手機程式設計 程式設計與應用班 建國科技大學 資管系 饒瑞佶 2012/4 V1
2017 Operating Systems 作業系統實習 助教:陳主恩、林欣穎 實驗室:720A.
Android App簡介及 App Inventor 2體驗 靜宜大學資管系 楊子青
雲端計算.
第一單元 建立java 程式.
VS.NET 2003 IDE.
App Inventor 2初體驗 靜宜大學資管系 楊子青
第3章 Java語法的JSP程式 3-1 Java語言的基礎 3-2 JSP程式的基本架構 3-3 Java的變數與資料型態
第 19 章 XML記憶體執行模式.
注意:教程中给出的所有示例代码请勿直接拷贝使用!会引起不必要的错误!
JAVA 程式設計 資訊管理系 - 網路組.
古佳怡 實驗流程.
Visual C++ Windows Programming
第5章 其他数据库对象.
C语言环境配置.
第二章 Java基本语法 讲师:复凡.
程式的時間與空間 Time and Space in Programming
Flash 8:開口中 從Y:\ 複製『開口中.fla』到 D:\ 更改名稱為:s3x99 (你的班號) 雙按開啟檔案 2019年5月7日
第二章 Java语法基础.
雲端計算.
本节内容 Lua基本语法.
2018 Operating Systems 作業系統實習 助教:林欣穎 實驗室:720A.
雲端計算.
Do While 迴圈 東海大學物理系‧資訊教育 施奇廷.
MultiThread Introduction
大数据应用人才培养系列教材 Python语言 刘 鹏 张 燕 总主编 李肖俊 主编 刘 河 钟 涛 副主编.
第6章 PHP基本語法介紹.
Programming & Language Telling the computer what to do
開發Java程式語言的工具 JDK.
第七章 程序调试方法 异常 崩溃.
劉庠宏、林合治編著 國立高雄大學應用數學系 2005年3月1日
Introduction to the C Programming Language
Unix指令4-文字編輯與程式撰寫.
Develop and Build Drives by Visual C++ IDE
方法(Method) 函數.
InputStreamReader Console Scanner
Presentation transcript:

Python 簡介 林子傑

Outline Python 特色 程式語法 應用

Why Python?

TIOBE Index for April 2016

Python 特色 設計哲學是: 直譯式、動態語言 開發快速 「優雅」「明確」「簡單」 程式可閱讀性高 好學! 好寫! 效能?? 好學! 好寫! 效能?? 開發快速 適合做 prototype 一個程式碼被閱讀的次數很高,且某種程度上讀程式比寫程式困難 python2.0 - 2000年發布. ( c大約40年 .c++ 30 直譯式語言會將程式碼一句一句直接執行,不需先行編譯,好處是在開發修改時無須一一重新編譯 動態語言程式在執行時可以改變其結構,例如新的函式、物件、變數的型別也可以變換

Python 高階的資料型別能在一陳述句 (statement) 中表達很複雜的操作 陳述句的段落以縮排為區格而非刮號 不需要宣告變數和引數

誰在用 Python?

安裝 Python Ver. 3.5.1 or Ver. 2.7.11 https://www.python.org/downloads/

開啟 Python shell

Hello world! >>> print ‘hello world!’

開發環境 Pyzo – 輕量、小巧 PyCharm – 中大型專案需求 Eclipse with PyDev http://www.pyzo.org/start.html PyCharm – 中大型專案需求 http://www.jetbrains.com/pycharm/ Eclipse with PyDev http://www.pydev.org/

Pyzo

Pyzo 好用指令 查看說明文件: ?X or X? ??X or X?? 路徑相關: cd ls 變數相關: who - list variables in current workspace whos - list variables plus their class and representation 執行相關: timeit X - times execution of command X run X - run file X

Python 語法 使用 ”縮排” 代替大括號,且規範為 4 個空格 不使用分號 “ ; ”

Python 語法 資料型態: Integer Float Boolean String – ‘hello’ List – [ … ] Dictionary – { … }

String str1 = ‘hello’ str2 = “!!!” str3 = “““ hello! goodbye””” 'hello!\ngoodbye' str4 = str1 + str2 >>> print str4 hello!!!

String str = ‘hello’ >>> str[0] ‘h’ >>> str[2] ‘l’ a = 100 str = “ans: {num}” .format(num = a) >>> print str ans: 100

List lst = [ 100 , 'hello‘ , [1,2] ] >>> lst[0] 100 [1, 2] >>> lst.append('hi') >>> lst [ 100, 'hello' , [1, 2] , 'hi' ] >>> lst[-1] 'hi'

List lst = [ 100 , 'hello' , [1,2] , 'hi' ] 'hello‘ >>> lst.pop(1) 'hello‘ >>> lst [ 100 , [1, 2] , 'hi' ] >>> lst.insert(1,'goodbye') >>> lst [ 100, 'goodbye' , [1, 2] , 'hi' ]

Dictionary dic = { 'name' : 'john' , 'age' : 30 } >>> dic['f'] = 2 >>> dic { 'age' : 30 , 'name' : 'john' , 'f' : 2 } >>> dic.keys() [ 'age' , 'name' , 'f' ] >>> dic.pop('f') 2 >>> dic { 'age' : 30 , 'name' : 'john' }

流程控制 if / while if a == 10: print 'is 10' while a > 0: print a break continue

if a = 2 if 0 <= a <= 3: print '0~3' elif 4 <= a <= 6: else: print 'not in 0~6' >>> a = 3 >>> 0 <= a <= 3 True

流程控制 for >>> range(0,3) [0, 1, 2] >>> range(0,5,2) for a in range(0,5): print a >>> range(0,3) [0, 1, 2] >>> range(0,5,2) [0, 2, 4] >>> range(6,1,-1) [6, 5, 4, 3, 2]

基本輸出/輸入 print >>> a = 10 print ‘hello’ num = 10 print num lst = [1,'hi'] print lst >>> a = 10 >>> print 'he is' , a , 'years old' he is 10 years old

基本輸出/輸入 input imput = input( 'message' ) 2.x 3.x 依據輸入不同給予不同類別 ex. 輸入 1 -> int , 輸入 ‘hello’ -> string raw_input() 3.x 統一給予為字串

自定義函式 def myPower( num, power ): return num ** power

import import math, os import myFunction 現成的 library 自定義函式、類別 需在相同目錄下 myFunction.myPower myFunction.str

第三方函式庫 web框架 科學計算 GUI 影像處理 Machine Learning Django Flask Matplotlib SciPy Machine Learning scikit-learn GUI PyGtk PyQt 影像處理 PIL Pillow

安裝 >>> pip install pillow

批次作業 windows也有內建的一些方式可以修改

web資訊抓取 parser – sgmllib SGMLParser

科學計算 - SciPy

Scrapy 1.1 – PTT資料統計 擷取資料 推文分析 自動翻頁,並打開每篇文章 抓下標題、作者、本文 抓下每一則推文的作者和分數 matplotlib Numpy scikit-learn Seaborn

總結 Python 是一個簡單易學且好用的程式語言 第三方函式庫使用方便 開發快速,應用有潛力 語法簡單、閱讀性高,使用上也相當彈性 函式庫使用相較其他語言容易得多,只需import,拿來即用 IOT、SDN

參考資料 http://wiki.python.org.tw/Python Python 台灣使用者群組 http://www.codedata.com.tw/python/python-3-tutorial-1-1-getting-started/ Python 3 Tutorial http://www.openfoundry.org/tw/tech-column/8536-introduction-of-python-extension- management-tools Python 套件管理程式簡介 http://dokelung-blog.logdown.com/posts/280520-python-quickstart Python 快速入門 https://zh.wikipedia.org/wiki/Python Wikipedia http://city.shaform.com/blog/2016/02/28/scrapy.html Scrapy + Python 3: PTT 資料抓取與分析