Python全棧-Day01
- Alex講師(金角大王)的自我介紹及成長經歷,很勵誌
- 學好英語很重要。等工作穩定了,報個班學習英語(比如華爾街英語)
- 求職時,英語會刷新一大波人,掌握了英語,對這個世界的認知會發生很多的變化
- Python非常擅長開發交融交易系統
- 做技術崗位很純粹!靠技術吃飯
- 寫博客對找工作是一個加分項,博客園(cnblogs是一個很好的平臺)
02-開課介紹02
- 為什麽要學Python
- 學習Python有沒有前途
- 課程目標
- 項目介紹
一、為什麽要學Python
Python的應用領域
Python可以應用於眾多領域,如:數據分析、組件集成、網絡服務、圖像處理、數值計算和科學計算等眾多領域。目前業內幾乎所有大中型互聯網企業都在使用Python,如:Youtube、Dropbox、BT、Quora(中國知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、騰訊、汽車之家、美團等。
- Python在系統編程中的應用
- Python在網絡爬蟲方面的應用
- Python在人工智能、科學計算中的應用
- Python在WEB開發中的應用
- Python在系統運維中的應用
- Python在大數據、雲計算方面的應用
- Python在金融方面的應用
- Python在圖形界面方面的應用
- Python在企業和網站方面的案例應用
Python在系統編程中的應用
Python語言在操作系統的內置接口,被稱為Shell工具。Python程序可以搜索文件和目錄樹,可以運行其他的應有程序或是用進程或線程進行並行處理。Python標準庫綁定了POSIX 以及其他常規操作系統工具。所以環境變量、管道、進程、多線程、文件、套接字、Python正則表達式模式匹配、命令行參數、標準流接口、Shell 命令啟動器、file擴展等。除此之外很多Python 的系統工具設計時都考慮了其可移植性。
Python在網絡爬蟲方面的應用
由於Python的網絡方面的功能非常強大,常用來實現網絡爬蟲,常用框架有:
- grab – 網絡爬蟲框架(基於pycurl/multicur)
- scrapy – 網絡爬蟲框架(基於twisted),不支持Python3
- pyspider – 一個強大的爬蟲系統
- cola – 一個分布式爬蟲框架
- portia – 基於Scrapy的可視化爬蟲
- restkit – Python的HTTP資源工具包,它可以讓你輕松地訪問HTTP資源,並圍繞它建立的對象
- demiurge – 基於PyQuery的爬蟲微框架
Python在人工智能、科學計算中的應用
科學運算、人工智能: 典型庫NumPy、SciPy、Matplotlib、 Enthought librarys、pandas
Python在WEB開發中的應用
Python有眾多優秀的WEB框架,眾多大型網站均為Python開發,Youtube, Dropbox, 豆瓣等等。典型WEB框架有Django、Flask、pyramid、Tornado、Bottle、WebPy等。
Python在系統運維中的應用
Python已經成為運維人員必備語言,尤其是在Linux運維方面,基本上是自動化運維。Openstack、SaltStack、Ansible、騰訊藍鯨。
Python在大數據、雲計算方面的應用
Python是大數據、雲計算最火的語言, 典型應用OpenStack
Python在金融方面的應用
量化交易,金融分析,在金融工程領域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作為動態語言的Python,語言結構清晰簡單,庫豐富,成熟穩定,科學計算和統計分析都很厲害,生產效率遠遠高於C、C++、Java,尤其擅長策略回測。
Python在圖形界面方面的應用(GUI圖形開發)
PyQT, WxPython,TkInter、Kivy
Python在企業和網站方面的案例應用
谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬蟲、Google廣告等項目都在大量使用Python開發
CIA: 美國中情局網站就是用Python開發的
NASA: 美國航天局(NASA)大量使用Python進行數據分析和運算
YouTube:世界上最大的視頻網站YouTube就是用Python開發的
Dropbox:美國最大的在線雲存儲網站,全部用Python實現,每天網站處理10億個文件的上傳和下載
Instagram:美國最大的圖片分享社交網站,每天超過3千萬張照片被分享,全部用python開發
Facebook:大量的基礎庫均通過Python實現的
Redhat: 世界上最流行的Linux發行版本RHEL/CentOS中的yum包管理工具就是用python開發的
豆瓣: 公司幾乎所有的業務均是通過Python開發的
知乎: 國內最大的問答社區,通過Python開發(國外Quora)
除上面之外,還有搜狐、金山、騰訊、盛大、網易、百度、阿裏、淘寶 、土豆、新浪、果殼等公司都在使用Python完成各種各樣的任務。
二、學習Python有沒有前途
- Python程序員之美帝收入PK天朝收入
- TIOBE編程語言排行榜
- 程序員最喜歡的編程語言-Python
TIOBE 2017年12月編程語言排行榜
三、課程目標
畢業後,可以從事後端開發、網站、電子商城、CRM軟件(客戶關系管理軟件)、BBS論壇、通訊軟件開發等工作;
四、項目介紹
- 抽屜
- Web聊天室
- JD.COM商城
- 汽車之家項目
- CMD(資產管理)
- 新浪微博
心靈雞湯:
- 箴言:培訓只是助其快速成長,更多的還是自己的努力!
- 方向不對,努力白費。
- 千萬不要去外包公司!
- 我們都是一個不甘平庸的自己!
03-開課介紹03
人的一生為什麽要努力呢?這也許是我聽過的最好的答復:
- The life you wanted!
- 人的一切痛苦,本質上都是對自己無能的憤怒!
- 高中課本裏面王安石同學曾說:“世之奇偉、瑰怪、非常之觀,常在於險遠,而人之所罕至焉,故非有誌者不能至也。”
- 不是為了去換取成功,不是為了去超越別人,是一種想去體驗一個更大的世界的欲望!
- 痛苦是短暫的,飽暖思淫欲,人生,就是一個不斷豐富自己的過程!
- 人生應該主動,毛遂自薦的精神!
So,現實很殘酷!
接下來幾個月,你會很痛苦,
But,All growth is a leap in the dark!
但是,所有的成長都是黑暗中的一躍!
將來的你,一定會感激現在拼命的自己!(健康的去拼命哦!)
期待半年後,你會看到一個全新的自己!記住,2018希望滿滿哦!
Thanks ,人生苦短,我用Python!
04-電腦簡史01
電腦簡史01:
- 手指
- 結繩記事
- 算籌——數學家祖沖之計算圓周率時使用的工具就是算籌
- 算盤
- 1630年,英國數學家奧特雷德,機械化計算機
- 18世紀末,瓦特成功制作了第一把計算尺
- 1642年,帕斯卡發明了人類有史以來第一臺機械計算機——帕斯卡加法器(只能夠做加法和減法)
- 1674年,萊布尼茨發明了新型的機械計算機(連續重復做加減法)並率先系統提出了“二進制”的運算法則
- 1725 年,法國紡織機械師布喬發明了“穿孔紙帶”的構想,編織機應用
- 1805年,法國機械師傑卡德,發明”自動提花編織機“
- 1822年,巴貝奇發明世界上第一臺“差分機”
- 1834年,巴貝奇提出了一個更新更大膽的設計——通用的數學計算機,巴貝奇稱它為“分析機”
附註:一個多世紀過去後,現代電腦的結構幾乎就是巴貝奇分析機的翻版,只不過它的主要部件被換成了大規模集成電路而已,巴貝奇當之無愧於計算機系統設計的“開山鼻祖”
- 阿達開天辟地第一回為計算機編出了程序,其中包括計算三角函數的程序、級數相乘程序、伯努利函數程序等等
- 1890年,德國僑民霍列瑞斯博士根據巴貝奇的發明和傑卡德的穿孔紙帶設計了機器,很快完成人口普查
- 1896年,霍列瑞斯博士創辦了IBM公司的前身
- 1906年,美國的德福雷斯特發明了電子管,為計算機的發展奠定了基礎
05-電腦簡史02
- 1924年,IBM——一個有劃時代意義的公司成立
-
1944年,馬克1號計算機在哈佛大學正式運行。從外表看,它的外殼用鋼和玻璃制成,長約15米,高約2.4米,自重達到31.5噸,他可以每分鐘進行200次以上的運算。可以作23位數加23位數的加法,一次僅需要0.3秒;而進行同樣位數的乘法,則需要6秒多的時間。馬克1號被稱為最後一臺“史前”計算機——機械/電動方式
- 1946年2月14日,世界上第二臺電子計算機,世界上第一臺通用計算機 (多個行業都可以使用)埃歷阿克”(ENIAC,譯成中文是“電子數字積分和計算機”)誕生於美國賓夕法尼亞大學
- 1945年6月,馮·諾依曼與戈德斯坦、勃克斯等人為埃德瓦克方案聯名發表了一篇長達101頁紙洋洋萬言的報告,即計算機史上著名的“101頁報告”。這份報告奠定了現代電腦體系結構堅實的根基,直到今天,仍然被認為是現代電腦科學發展裏程碑式的文獻。報告明確規定出計算機的五大部件(輸入系統、輸出系統、存儲器、運算器、控制器)並用二進制替代十進制運算,大大方便了機器的電路設計
- 自馮·諾依曼設計的埃德瓦克始,直到今天我們用“奔騰”芯片制作的多媒體計算機為止,電腦一代又一代的“傳人”,大大小小千千萬萬臺計算機,都沒能夠跳出諾依曼機的掌心。在這個意義上,馮·諾依曼是當之無愧的“電腦之父”。
第一代電子管計算機(1946~1958)
特點: 操作指令是為特定任務而編制的,每種機器有各自不同的機器語言,功能受到限制,速度也慢。另一個明顯特征是使用真空電子管和磁鼓儲存數據。
第二代晶體管計算機 (1956-1963)
特點: 晶體管代替了體積龐大電子管,使用磁芯存儲器。體積小、速度快、功耗低、性能更穩定。還有現代計算機的一些部件:打印機、磁帶、磁盤、內存、操作系統等。在這一時期出現了更高級的COBOL和FORTRAN等編程語言,使計算機編程更容易。新的職業(程序員、分析員和計算機系統專家)和整個軟件產業由此誕生。
第三代集成電路計算機 (1964-1971):
特征是以中小規模集成電路,來構成計算機的主要功能部件。主存儲器采用半導體存儲器。運算速度可達每秒幾十萬次至幾百萬次基本運算。在軟件方面,操作系統日趨完善。
第四代大規模集成電路計算機 (1971-至今):
指從1970年以後采用大規模集成電路(LSI)和超大規模集成電路(VLSI)為主要電子器件制成的計算機,重要分支是以大規模、超大規模集成電路為基礎發展起來的微處理器和微型計算機。
06-計算機結構基礎01
馮·諾伊曼提出的計算機的五大部件:輸入設備、輸出設備、存儲器、運算器和控制器。
- 主板:主板(英語:Motherboard, Mainboard,簡稱Mobo);又稱主機板、系統板、邏輯板、母板、底板等,是構成復雜電子系統例如電子計算機的中心或者主電路板,相當於人體的軀幹,上面分布著CPU、內存、顯卡、網卡、硬盤等部件。
- CPU:中央處理器(CPU,Central Processing Unit)是一塊超大規模的集成電路,是一臺計算機的運算核心(Core)和控制核心( Control Unit)。它的功能主要是解釋計算機指令以及處理計算機軟件中的數據。
- 硬盤:是電腦主要的存儲媒介之一,由一個或者多個鋁制或者玻璃制的碟片組成。碟片外覆蓋有鐵磁性材料。
- 內存:是計算機中重要的部件之一,它是與CPU進行溝通的橋梁。計算機中所有程序的運行都是在內存中進行的,因此內存的性能對計算機的影響非常大。內存(Memory)也被稱為內存儲器,其作用是用於暫時存放CPU中的運算數據,以及與硬盤等外部存儲器交換的數據。只要計算機在運行中,CPU就會把需要運算的數據調到內存中進行運算,當運算完成後CPU再將結果傳送出來,內存的運行也決定了計算機的穩定運行。 內存是由內存芯片、電路板、金手指等部分組成的。
- 顯卡:(Video card,Graphics card)全稱顯示接口卡,又稱顯示適配器,是計算機最基本配置、最重要的配件之一。顯卡作為電腦主機裏的一個重要組成部分,是電腦進行數模信號轉換的設備,承擔輸出顯示圖形的任務。顯卡接在電腦主板上,它將電腦的數字信號轉換成模擬信號讓顯示器顯示出來,同時顯卡還是有圖像處理能力,可協助CPU工作,提高整體的運行速度。
- 電源:電腦電源是把220V交流電,轉換成直流電,並專門為電腦配件如CPU、主板、硬盤、內存條、顯卡、光盤驅動器等供電的設備,是電腦各部件供電的樞紐,是電腦的重要組成部分。電源決定了電腦的穩定性,它和人體心臟功能類似,都是提供動力的核心。
- 網卡(及其他):網卡是工作在鏈路層的網絡組件,是局域網中連接計算機和傳輸介質的接口,不僅能實現與局域網傳輸介質之間的物理連接和電信號匹配,還涉及幀的發送與接收、幀的封裝與拆封、介質訪問控制、數據的編碼與解碼以及數據緩存的功能等。
綜合查看一下個人PC電腦的信息
查看一下任務管理器中的信息
查看一下資源監視器中的信息
舉一個接近我們生活的例子來來說嗎明一下CPU、硬盤、內存三者之間的關系。
如果說把“硬盤”比喻成一個大倉庫,CPU比喻成加工車間,那麽內存就是一個臨時的小倉庫。從距離上來說, 相比內存到CPU的距離和硬盤到內存的距離,內存和CPU的距離更短。
- 硬盤(大倉庫)用來保存車間需要用的原料和最終生產出來的商品。倉庫太大,取出原料和存儲商品太慢,耗時間。
- 內存(臨時小倉庫):原料會先放到這裏,小倉庫,可以很快的找到需要的原料或商品。
- CPU(車間):從內存(小倉庫)裏拿到原料,生產商品。中間會有半成品,半成品可以放在內存(小倉庫)裏。
Python全棧-Day01