第二章 python基本語法元素


python有兩種編程方式,交互式和文件式。

交互式:對每個輸入語句即時運行結果------適合語法練習

文件式:批量執行一組語句並運行結果------編程的主要方式

實例1:圓面積的計算(根據半徑r計算圓面積)

上圖明顯是交互式運行的結果,如果想編輯文件式運行,則先編輯一個calcircle.py文件,將上述代碼寫進去。

然后輸入代碼 python calcircle.py,命令界面即可輸出代碼結果。

 

下面我們試試繪制多個同心圓的代碼:

1 import turtle
2 turtle.pensize(2)
3 turtle.circle(10)
4 turtle.circle(40)
5 turtle.circle(80)
6 turtle.circle(160)
7 turtle.done()

運行結果,如下圖所示

下面我們稍微分析一下這段代碼

import turtle#導入海龜庫
turtle.pensize(2)#設置畫筆的大小
turtle.circle(10)#畫圓,半徑為正(負),表示圓心在畫筆的左邊(右邊)畫圓
turtle.circle(40)
turtle.circle(80)
turtle.circle(160)
turtle.done()#必須是烏龜圖形程序中的最后一個語句

關於turtle庫的使用,之后還會提及,turtle庫是python的自帶庫,繪制圖像相對來說比較方便,容易理解

當然上述的代碼也可以這樣寫

1 from turtle import *
2 pensize(2)
3 circle(10)
4 circle(40)
5 circle(80)
6 circle(160)
7 done()

大家很容易發現他們的不同,就是第一句的區別,關於import的用法也將在后續章節詳細講述。

下面我們來畫一個難一點的圖形

from turtle import *
color('red','black')#前一個顏色是線條色,后一個是填充色
begin_fill()#從這里開始填充
for i in range(5):#畫五筆就可以結束
    fd(200)
    rt(144)#向右旋轉144度
end_fill()#結束填充
done()

 

下面我們從一個簡單的小程序來分析python的語法體系

我們大家都知道,華氏溫度和攝氏溫度之間的轉換,我們可以用python編程實現

TempStr = input("請輸入帶有符號的溫度值: ")#input顯示的內容出現在屏幕上,且返回一個str類型的字符串
if TempStr[-1] in ['F', 'f']:#如果最后一個字符是F
    C = (eval(TempStr[0:-1]) - 32)/1.8#eval將字符串轉換成數字
    print("轉換后的溫度是{:.2f}C".format(C))#格式化輸出
elif TempStr[-1] in ['C', 'c']:
    F = 1.8*eval(TempStr[0:-1]) + 32
    print("轉換后的溫度是{:.2f}F".format(F))
else:
    print("輸入格式錯誤")

縮進:縮進表達程序的格式框架

1、嚴格明確:縮進是語法的一部分,縮進不正確程序運行錯誤

2、所屬關系:表達代碼間包含層次關系的唯一手段

3、長度一致:使用TAB鍵即可

python編程語言有一個重要的特點就是取消了{ }而用縮進的方式進行代碼塊的分割,初學者可能不習慣,多寫幾次就習慣了這種寫法。

注釋:不被程序執行的輔助性說明信息

單行注釋:

 #這是單行注釋

多行注釋:

1 '''  這是多行注釋
2 
3     23333333333333  '''

 

 變量:程序中用於保存和表示數據的占位符號

變量采用標識符(名字)來表示,關聯標識符的過程叫命名

  TempStr是變量名字

可以使用等號(=)向變量賦值或修改值,=被稱為賦值符

  TempStr="82F" #向變量TempStr賦值"82F"

命名規則:大小寫字母、數字、下划線和漢字等字符

  如:TempStr、Python_Great

注意事項:大小寫敏感、首字符不能是數字、不與保留字相同

python與Python是不同的變量,123Python是不合法變量

 

保留字

被編程語言內部定義並保留使用的標識符

python語言有33個保留字(也叫關鍵字)

  if,elif,else,in

保留字是編程語言的基本單詞,大小寫敏感

  if是保留字,If是變量

保留字

數據類型

字符串、整數、浮點數、列表

10011101該如何解釋呢?

這是一個二進制數字或十進制數字

  作為二進制數字,10011101的值是十進制157

這是一段文本或者用逗號分隔3個數字

  作為一段文本,逗號是文本中的一部分,一共包含10個字符

  整數類型10011101

  字符串類型:"10,011,101"

  列表類型:[10,011,101]

字符串:由0個或多個字符組成的有序字符序列

      由一對雙引號或一對單引號表示

      "helloworld"或'GOOD'

  字符串是字符的有序序列,可以對其中字符進行索引

  如"你"是"你好啊"這個字符串的第0個字符

  python的字符串序號,正向遞增,反向遞減

字符串的使用

 使用[ ]獲取字符串中一個或多個字符

1 TempStr = input("請輸入帶有符號的溫度值: ")
2 if TempStr[-1] in ['F', 'f']:#TempStr[-1]指的是最后一個字符
3     C = (eval(TempStr[0:-1]) - 32)/1.8#TempStr[0:-1]指的是字符串從第一個到最后一個之前的所有字符串
4     print("轉換后的溫度是{:.2f}C".format(C))
5 elif TempStr[-1] in ['C', 'c']:
6     F = 1.8*eval(TempStr[0:-1]) + 32
7     print("轉換后的溫度是{:.2f}F".format(F))
8 else:
9     print("輸入格式錯誤")

數字類型:整數和浮點數

整數:數學中的整數

  32或-89

浮點數:數學中的實數,帶有小數部分

  1.8或者-1.8或者-1.0

列表類型:由0個或多個數據組成的有序序列

  列表使用[ ]表示,采用逗號分隔各元素

  [ 'F' , 'f' ]表示列表里含義兩個元素'F'和'f'

  使用保留字in判斷一個元素是否在列表中

  TempStr[-1] in ['C' , 'c']判斷前者是否與列表中的某個元素相同

賦值語句:由賦值符號構成的一行代碼

賦值符號筆者之前提過,就是我們俗稱的等於號,但等於號在編程語言中通常表示賦值,不表示等於號的含義。

1、賦值語句用來給變量賦予新的數據值

C = (eval(TempStr[0:-1]) - 32)/1.8   #右側運算結果值賦值給C

2、賦值語句右側的數據類型同時作用於變量

TempStr = input("請輸入帶有符號的溫度值: ")    #input返回一個字符串,所以TempStr也是字符串

分支語句:由判斷條件決定程序運行方向的語句

1、使用保留字  if elif else構成條件判斷的分支結構
1 if TempStr[-1] in ['F', 'f']:

如果條件為True則執行冒號后的語句

   2、每個保留字所在行最后存在一個冒號:,是語法的一部分

  冒號及后續縮進用來表示后續語句與條件的所屬關系

函數:根據輸入參數產生不同輸出的功能過程

  類似於數學中的函數,y=f(x)

print("輸入格式錯誤")   #打印出  輸入格式錯誤

  函數采用<函數名>(<參數>)的方式使用

1     eval(TempStr[0:-1])  #TempStr[0:-1]是參數

python的輸入輸出

input():從控制台獲得用戶輸入的函數

input()函數的使用格式:

1 <變量>=input (<提示信息字符串>)

用戶輸入的信息以字符串類型保存在<變量>中

1 TempStr=input("請輸入") #TempStr保存用戶輸入的信息

輸出函數print()

  以字符形式向控制台輸出結果的函數

  print()函數的基本使用格式 

1 print(<擬輸出字符串或字符串變量>)

  字符串類型的一對引號僅在程序內部使用,輸出無引用

1     print("輸入格式錯誤")  #向控制台輸出  輸入格式錯誤

 

print函數的格式化:

1  print("轉換后的溫度是{:.2f}C".format(C))

      { }表示槽,后續變量填充到槽中

      {:.2f}表示將變量C填充到這個位置時取小數點后2位

      如果C的值是123.456789,則輸出結果為123.45C

評估函數eval():去掉參數最外側引號並執行余下語句的函數

eval的基本使用格式

1 eval(<字符串或字符串變量>)
>>>eval("1")

1

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM