Python基礎入門

Python基礎入門:

Python使用場景:

1、交互式環境使用場景:

一、問題:

  • exit以後代碼就沒有了(須要本身將代碼保存到文件)
  • 每次須要從新輸入(或者從文件中複製粘貼到Python交互環境下運行)

二、使用場景

  • 查看幫助信息
  • 快速測試

2、腳本方式運行代碼:

一、編寫python腳本:

  • 建立.py後綴的文件(命名規則英文大小、寫字母 和 數字,不能以數字開頭)
  • 編輯內容print('Hello World')
  • 使用python3.5命令後加文件名方式運行文件
  • 代碼註釋,使用#開頭

二、準備編輯器

    1)推薦使用IDE(pycharm、eclipse+pydev、sublime、atom)、不建議使用vi/vim(除非熟練使用)

    2)編輯器配置:

  • 文件編碼方式爲UTF-8
  • Tab鍵替換爲4個空格
  • 文件換行符使用\n(unix)

三、變量定義&賦值

給數據起一個名字,在後續的代碼中使用變量名訪問數據python

1)變量名規則:

  • 只能由大小寫英文字母、數字、下劃線組成
  • 不能以數字開頭
  • 避免和python保留字和關鍵字衝突

2)變量名先定義,後使用

In [1]: pi = 3.1415926

In [2]: radius = 10

In [3]: print(2 * pi * radius)
62.831852

In [4]: print(pi * radius * radius)  
314.15926

In [5]: radius = 20

In [6]: print(2 * pi * radius)
125.663704

In [7]: print(pi * radius * radius)  
1256.63704

四、語句

讓計算機作一件事程序員

  • 賦值語句
  • 打印語句

五、接收命令行輸入

  • 輸入語句
name = input('請輸入你的名字:')
print('你的名字是:', name)
  • 聲明.py腳本內容使用utf-8編碼(須要在python第一條語句前聲明)
#encoding: utf-8
print('Hello World')
  • 備註:python2.7使用raw_input

Python數據類型:

1、數值類型

像年齡、身高、體重、分數、圓周率這樣的數字vim

一、分類:

     1)按是否帶小數點:

  • 整數
  • 浮點數

    2)按是否帶負數:

  • 正數
  • 負數

二、四則運算:

加(+)、減(-)、乘(*)、除(/)、整除(//)、餘(%)、冪(**)eclipse

注:Python2.7中,整數除(/)整數得整數(能夠經過導入from__future__ import division 修改其行爲與Python3.5一致)python2.7

2、字符串類型

像名字、一句話描述這樣的文本編輯器

一、使用單引號(' ')、雙引號(" ")、三個('''  ''')或三個雙引號("""  """)引發來的一些字符

二、特殊字符:

  • \        轉義符
  • \r       回車
  • \n       換行
  • \t        Tab鍵
  • \f        換頁

三、四則運算

  • 加(+)        必須爲兩個字符串相加
  • 乘(*)         必須爲一個整數

3、類型判斷與轉換

一、type函數

In [11]: print(type(1))
<class 'int'>

In [12]: print(type(1.2))
<class 'float'>

In [13]: print(type(''))
<class 'str'>

In [14]:

二、類型轉換

  • int/str => float

In [16]: print(type(float(1)))
<class 'float'>

In [17]: print(type(float('1.2')))
<class 'float'>
  • float/str => int

In [14]: print(type(int(1.2)))
<class 'int'>

In [15]: print(type(int('1')))
<class 'int'>
  • int/float => str 

In [18]: print(type(str(1)))
<class 'str'>

In [19]: print(type(str(1.2)))
<class 'str'>

練習:

一、定義變量name(str)和age(int), 並打印出 「my name is xx, and I’m xx years old」    

#encoding: utf-8
name = "Li Lei", age = 20
print("my name is", name, ",", "and I'm", age, "years old")

二、提示用戶從控制檯分別輸入name和age,並打印出 「my name is xx, and I’m xx years old」

#encoding: utf-8
name = input("your name is:"); age = input("your age is:")
print("my name is", name, ",", "and I'm", age, "years old")

三、提示用戶從控制檯兩個數字,計算兩個數字的和、差、積、商,並進行打印

#encoding: utf-8
n1 = int(input("a number:")); n2 = int(input("a number:"))
print(n1 + n2, n1 - n2, n1 * n2, n1 / n2)

4、布爾類型  

表示真假,只有True/False函數

In [22]: is_boy = True

In [23]: is_girl = False

In [24]: print(is_boy, is_girl)
True False

一、布爾運算

  • 或(A or   B: A、B兩個只要一個爲真則爲真)
  • 且(A and B: A、B兩個都爲真時,才爲真)
  • 非(not A: A爲真則爲假;A爲假則爲真)

二、四則運算

  • 加(相似or)、減、乘(相似and)、除

三、類型轉換

  • int/str/float => bool(練習0, 1,-1, 0.0, 0.1, 0.2, ‘a’,  ' ')
In [39]: bool(0)
Out[39]: False

In [40]: bool(0.0)
Out[40]: False

In [41]: bool(0.1)
Out[41]: True
...
  • bool => int/str/float

5、流程控制

  • 條件語句
  • 循環語句

一、條件語句:

笑話:測試

程序員的妻子叫程序員去買一斤包子,若是看到賣西瓜的,買一個。一下子,程序員拿着一個包子回來了,妻子問他爲何只買一個包子,答曰:看到賣西瓜的了。編碼

解釋:atom

  • 妻子:

            買一斤包子,若是看到西瓜,就買一個西瓜    

  • 丈夫:

            若是看到西瓜就買一個包子,不然就買一斤包子

妻子:

#encoding: utf-8
print(">>買一斤包子")
show = input("看到西瓜了嗎?:")
if show == "看到了":
	print(">>買一個西瓜")

丈夫:

#encoding: utf-8
show = input("看到西瓜了嗎?:")
if show == "看到了":
	print(">>買一個包子")
else:
	print(">>買一斤包子")

幫助:http://www.pythontutor.com

  • 根據表達式的真假控制代碼的執行流程
  • 關鍵字:if,elif,else
  • 條件表達式使用:標識條件結束,子語句開始
  • 使用縮進(建議4個空格)表示子語句
  • 從第一個條件開始判斷,若是條件爲真則執行子語句,不然判斷下一個條件,若是全部爲假,則執行else中的子語句
  • elif能夠有0個或任意多個,else能夠有0個或1個

練習:

    1)提示用戶從控制檯輸入一個分數:

    判斷分數若是>=90分則打印優秀

    判斷分數若是>=80分則打印良好

    判斷分數若是>=60分則打印及格

    不然打印不及格

#encoding: utf-8
score = input("請輸入你的分數:")
score = float(score)
if score >= 90:
	print("優秀")
elif score >= 80:
	print("良好")
elif score >= 60:
	print("及格")
else:
	print("不及格")

    2)提示用戶從控制檯輸入一個年份,判斷年份是否爲閏年

    四年一閏,百年不閏;四百年再閏

    示例:

        1900

        2000

        2004

#encoding: utf-8
year = input("請輸入年份:")
year = int(year)
if year % 4 == 0 and year % 100 !=0:
	print("閏年")
elif year % 400 == 0:
	print("閏年")
else:
	print("不是閏年")

二、循環語句:

  • 根據表達式的真假,來控制代碼是否結束子語句循環執行,若是爲真則繼續循環執行
while condition:
    code
  • 計算1-100的和
#encoding: utf-8
idx = 1
idx_sum = 0
while idx <= 100:
	idx_sum = idx_sum + idx
	idx = idx + 1
print("sum is:", idx_sum)

練習:循環提示用戶在控制檯上輸入數字或者exit,當用戶輸入exit後結束程序,並打印全部輸入數字的和與平均數

#encoding: utf-8

input_test = input("請輸入一個數字或exit(結束):")

input_sum = 0
input_count = 0
while input_test != "exit":
	input_sum += float(input_test)
	input_count += 1
	input_test = input("請輸入一個數字或exit(結束):")

if input_count == 0:
	print("sum: 0, avg: 0")
else:
	print("sum:", input_sum, ", avg:", input_sum / input_count)

三、break與continue

  • break 跳出循環
  • continue 跳過本次循環,繼續下次循環條件判斷
#encoding: utf-8

idx = 0
max_idx = 5
print("break")
while idx <= max_idx:
	idx += 1
	if idx == 3:
		break
	print(idx)
#encoding: utf-8

idx = 0
max_idx = 5
print("continue")
while idx <= max_idx:
	idx += 1
	if idx == 3:
		continue
	print(idx)

列表:

  1. 有序的數據集合
    nums = [1, 5, 6, 3, 2, 5]

     

  2. 獲取序列中第n個元素

    nums[n - 1]

     

  3. 遍歷集合中全部元素

    #enconding: utf-8
    
    nums = [1, 5, 6, 3, 2, 5]
    for num in nums:
        print(num)
相關文章
相關標籤/搜索