python雖然好學,但是也要是付出努力之后,學懂了才會覺得好學,如果你沒有動力,沒有付出時間和精力,那對于你來說就是多好學也是非常的困難的!如何找到學習python的動力呢?以下是小編為你整理的自學python怎么學 ?
這是你學習之前的*步,一定要清楚的知道,自己為什么要學習python,不論是為了達成某種目的,比如:工作中要用到?對以后發(fā)展有利?等等方面,絕不是憑空亂想的,一時興起想要學習。
?
做任何事情,都需要有興趣,不然,即便是你天天坐在那兒,埋頭苦學,你的思想也在九霄云外遨游,不知所以。所以,提高學習興趣是關鍵! ?
一定要設定目標,比如:我一個月要掌握基礎,第二個月,也要學習框架等等,要給自己做好初期的預算,不能沒有目標,學到哪兒算哪兒的態(tài)度是不可能學好東西的!所以,一定要給自己設定明確的目標,這樣學習就會有動力,就像一只有人催促一樣。 ?
一定要有一個團隊或者同伴,大家一起干一件事情要比你一個人孤零零的干快得多,也要有趣的多,可以少走很多的彎路,集體的力量是強大的,當你覺得學習越來越順利的時候,你就會有動力去繼續(xù)學習。 ?
用python運算
或許,你覺得100+300太簡單了,那我們可以嘗試一個復雜的,在>>>后輸入10*(100/2)/3+2,按下回車后,就可以看到結果了,各種四則運算,包括三角函數(shù),python都是可以計算的 ?
接下來我們看個更強大的功能,輸入123456789098765432112345678900987654321834539845094368095486540978045765*123456789098765432112345678900987654321473287438759843579430965460940965940,按下回車,就會看到結果了,驚訝嗎,強大吧,你可以打開windows自帶的計算器計算這個式子,雖然也能計算出結果,但是它的結果卻是很粗略的,不光是整數(shù),小數(shù)也是可以計算的,小數(shù)在程序設計語言中一般稱為浮點數(shù)。還有因為歷史原因,計算機中出現(xiàn)的數(shù)學結果如e2,是指的10的2次方,這個和我們學的數(shù)學中的e是不一樣了。 ?
接下來我們嘗試下三角函數(shù)的計算,我們輸入sin(30),按下回車后,似乎出問題了,下面出現(xiàn)了一些紅色的字符,注意遇到紅色字符,就表明我們犯錯了。注意有這么一句: ?
NameError: name 'sin' is not defined,意思呢就是python不認識sin,昨天我們用的print則是它認識的,那該怎么辦呢,我們應該特別強調一下,告訴python,sin是數(shù)學中的三角函數(shù),首先我們敲入import math告訴python我們要用一些數(shù)學的功能,然后在敲入math.sin(30) ?
看到結果了,似乎不對啊,這是怎么回事呢,實際上在python里面sin這個函數(shù)要的參數(shù)是以弧度為單位的,而我們給的是角度,如何把角度轉換成弧度呢,python也給我們方法了,下來我們輸入math.sin(math.radians(30)),這回結果就對了,其中math.radians就是把角度轉換成弧度的 ?
Python的特點
1.易于學習:Python有相對較少的關鍵字,結構簡單,和一個明確定義的語法,學習起來更加簡單。 ?
2.易于閱讀:Python代碼定義的更清晰。 ?
3.易于維護:Python的成功在于它的源代碼是相當容易維護的。 ?
4.一個廣泛的標準庫:Python的*的優(yōu)勢之一是豐富的庫,跨平臺的,在UNIX,Windows和Macintosh兼容很好。 ?
5.互動模式:互動模式的支持,您可以從終端輸入執(zhí)行代碼并獲得結果的語言,互動的測試和調試代碼片斷。
?
6.可移植:基于其開放源代碼的特性,Python已經(jīng)被移植(也就是使其工作)到許多平臺。 ?
7.可擴展:如果你需要一段運行很快的關鍵代碼,或者是想要編寫一些不愿開放的算法,你可以使用C或C++完成那部分程序,然后從你的Python程序中調用。 ?
8.數(shù)據(jù)庫:Python提供所有主要的商業(yè)數(shù)據(jù)庫的接口。 ?
9.GUI編程:Python支持GUI可以創(chuàng)建和移植到許多系統(tǒng)調用。 ?
10.可嵌入: 你可以將Python嵌入到C/C++程序,讓你的程序的用戶獲得"腳本化"的能力。 ?
對象引用
首先是理解對象引用,對象引用就是映射關系
比如,你在超市的儲物柜1號放了個包裹,那么你得到一張票據(jù),上面寫著A
那么,這個A就是引用了這個格子
標識符-等號-對象,比如,A = 123 ?
那么,A是標識符,123是對象
注意:標識符的大小寫是區(qū)分的,ABC與Abc與abc,是不同的標識符
如果之前接觸過java,這個理解起來會有點不一樣,python的變量就是對象引用,與java的變量存儲在棧內(nèi)存是不一樣
比如A=1,B=A,那么結果是A和B都指向1 ?
假如這時候,A=2,那么A會指向2,B不會跟著改變,則還是指向1
所以說,A指向另外一個引用的時候,是直接指向另外一個引用所引用的對象的
換成代碼,則是下面這樣,首先A指向1號,然后B指向A,再把A的指向2號 ?
這樣的情況下,B不會跟著改變
還有重要的一點,就是對象不會隨著沒有被引用而馬上消失,假設A和B都是指向1,然后A和B又指向2,那么1沒有被引用了,但是還是會存在的