1. 程式人生 > >python 基礎學習之動態語言初識

python 基礎學習之動態語言初識

靜態語言 動態語言

初衷

C/C++/Java語言都是靜態語言,而python是動態語言,那就先從這個點出發,來學習python...

基本概念

靜態語言(強類型語言)

靜態語言是在編譯時變量的數據類型即可確定的語言,多數靜態類型語言要求在使用變量之前必須聲明數據類型。
例如:C++、Java、Delphi、C#等。

動態語言(弱類型語言)

動態語言是在運行時確定數據類型的語言。變量使用之前不需要類型聲明,通常變量的類型是被賦值的那個值的類型。
例如PHP/ASP/Ruby/Python/Perl/ABAP/SQL/JavaScript/Unix Shell等等。

強類型定義語言

強制數據類型定義的語言。也就是說,一旦一個變量被指定了某個數據類型,如果不經過強制轉換,那麽它就永遠是這個數據類型了。舉個例子:如果你定義了一個整型變量a,那麽程序根本不

可能將a當作字符串類型處理。強類型定義語言是類型安全的語言。

弱類型定義語言

數據類型可以被忽略的語言。它與強類型定義語言相反, 一個變量可以賦不同數據類型的值。強類型定義語言在速度上可能略遜色於弱類型定義語言,但是強類型定義語言帶來的嚴謹性能夠有效的避免許多錯誤。

兩者區別

特性

強類型語言是一旦變量的類型被確定,就不能轉化的語言。
弱類型語言則反之,一個變量的類型是由其應用上下文確定的。

靜態語言的優勢

由於類型的強制聲明,使得IDE有很強的代碼感知能力,故,在實現復雜的業務邏輯、開發大型商業系統、以及那些生命周期很長的應用中,依托IDE對系統的開發很有保障;

由於靜態語言相對比較封閉,使得第三方開發包對代碼的侵害性可以降到最低;

動態語言的優勢

思維不受束縛,可以任意發揮,把更多的精力放在產品本身上;

集中思考業務邏輯實現,思考過程即實現過程;


***還是寫點東西吧

只把上面一點點的名詞解釋獨成一片blog感覺有點不太合適,接下來再放一點佐料。

寫一個小棋盤:

包含了函數的定義方式,循環的使用,條件判斷等簡單的可以用來進行功能編輯的python常識。

#coding utf-8
#from view import View

#棋盤規格設置
def InputNum():
	while True:
		print('please input a num:')
		num = input()
		size = int(num)
		if num.isdigit():
			break
		else:
			print('u had input a wrong num')
	return size;

#繪制棋盤
def PrintChess(size):
	i = 0
	j = 0
	for i in range(0,size):
		for j in range(0,size):
			print('[] ',end = '')
		print('')

# 人
def ManOperator(size):
	print('please input your next position:')
	print('example: 1,1')
	intX = input()
	intY = input()
	print(intX,intY)


#電腦

def ComOperator(size):
	row = range(0,size)
	print('computer:')

def Check():
	print('check')


def main():
	size = InputNum()
	while True:
		PrintChess(size)
		ManOperator(size)
		Check() 
		ComOperator(size)
		Check()



if __name__ == '__main__':
	main()


python 基礎學習之動態語言初識