python 知識回顧

第一章:搭建編程環境
1.在Windows系統中搭建Python編程環境。html

  1.1 安裝Pythonpython

    訪問http://python.org/downloads/ ,點擊下載到本地,後安裝。git

  1.2安裝文本編輯器(IDE)編程

    訪問https://www.jetbrains.com/zh/pycharm/specials/pycharm/pycharm.html? 下載pycharm,後安裝。ruby

 

第二章:變量和簡單數據類型數據結構

1.變量app

  命名和使用:變量名只能包含字母、數字和下劃線。變量名能夠字母或下劃線打頭,但不能以數字打頭;編輯器

        變量名不能包含空格,但可以使用下劃線來分隔其中的單詞;函數

        不要將Python關鍵字和函數名用做變量名,即不要使用Python保留用於特殊用途的單詞;工具

        變量名應既簡短又具備描述性;

        慎用小寫字母l和大寫字母O,由於它們可能被人錯當作數字1和0。

2.字符串:用引號括起的都是字符串,其中的引號能夠是單引號,也能夠是雙引號。

  2.1使用方法修改字符串的大小寫。

    title() 以首字母大寫的方式顯示每一個單詞,即將每一個單詞的首字母都改成大寫;

    lower()將字符串先轉換爲小寫;

  2.2合併(拼接)字符串。

    加號(+ )來合併字符串。

  2.3使用製表符或換行符來添加空白。 (空白 泛指任何非打印字符,如空格、製表符和換行符)

    使用字符組合\n,在字符串中添加換行符。  

>>> print("Python")
Python
>>> print("\tPython")
Python

    使用字符組合\t,在字符串中添加製表符。

>>> print("Languages:\nPython\nC\nJavaScript")
Languages:
Python
C JavaScript

    在同一個字符串中同時包含製表符和換行符。字符串"\n\t" 讓Python換到下一行,並在下一行開頭添加一個製表符。

>>> print("Languages:\n\tPython\n\tC\n\tJavaScript")
Languages:
Python
C
JavaScript

  2.4刪除空白

    使用方法rstrip(),確保字符串末尾沒有空白。

    使用方法lstrip(),剔除字符串開頭的空白。

    使用方法strip(),同時剔除字符串兩端的空白

3.數字

  3.1整數
    可對整數執行加(+ )減(- )乘(* )除(/ )運算;兩個乘號表示乘方運算;

  3.2浮點數
    Python將帶小數點的數字都稱爲浮點數 。

  3.3使用函數str() 避免類型錯誤

4.註釋。

  4.1單行註釋用井號(# )標識。多行註釋用三個單雙引號("""  """)標識。

 

第 三 章:列表簡介

 

1.訪問列表元素

  列表是有序集合,知道元素的位置或索引就可找到該元素。

  索引從0而不是1開始。    經過將索引指定爲-1 ,可以讓Python返回最後一個列表元素。

2.修改、添加和刪除元素。

  2.1修改列表元素

❶ motorcycles = ['honda', 'yamaha', 'suzuki']
print(motorcycles)
❷ motorcycles[0] = 'ducati'
print(motorcycles)

  2.2在列表中添加元素。

    方法append() 將元素'ducati' 添加到了列表末尾,而不影響列表中的其餘全部元素。

  2.3. 在列表中插入元素。

    使用方法insert() 可在列表的任何位置添加新元素。

  2.4從列表中刪除元素。

    使用del 語句刪除元素,使用del 可刪除任何位置處的列表元素,條件是知道其索引。

    方法pop() 可刪除列表末尾的元素,並讓你可以接着使用它。

    使用方法remove()可刪指定元素的值,也可接着使用它的值,只刪除第一個指定的值。

3.組織列表

  3.1使用方法sort() 對列表進行永久性排序。使用函數sorted() 對列表進行臨時排序。

  3.2倒着打印列表:使用方法reverse()來反轉列表元素的排列順序。

  3.3肯定列表的長度。使用函數len() 可快速獲悉列表的長度。

 

第 四 章:操做列表

 

1.遍歷整個列表

  1.1使用for 循環遍歷列表的全部元素.

2.建立數值列表

  使用函數range() 來打印一系列的數字.

for value in range(1,5):
print(value)

結果爲:1 2 3 4

  使用range() 建立數字列表。

numbers = list(range(1,6))
print(numbers)

結果爲:[1,2,3,4,5]

  使用函數range() 時,還可指定步長。例如,下面的代碼打印1~10內的偶數:

even_numbers = list(range(2,11,2))
print(even_numbers)

結果爲:[2, 4, 6, 8, 10]

  對數字列表執行簡單的統計計算

>>> digits = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
>>> min(digits)
0 
>>> max(digits) 9
>>> sum(digits) 45

3.切片。

  如:[1:4]指從列表第2個元素開始到第5個元素結束。

  3.1遍歷切片

    若是要遍歷列表的部分元素,可在for 循環中使用切片。

  3.2複製列表

    方法是同時省略起始索引和終止索引([:] )

4.元組:不可變的列表。使用圓括號()

  4.1不能給元組的元素賦值

  4.2遍歷元組中的全部值
    像列表同樣,也可使用for 循環來遍歷元組中的全部值。

  4.3修改元組變量
    雖然不能修改元組的元素,但能夠給存儲元組的變量賦值。

    若是須要存儲的一組值在程序的整個生命週期內都不變,可以使用元組。

5.集合 :

  相似於列表,但每一個元素都必須是獨一無二的。set(),是無序的,不可重複的數據集合。

  5.1增添:經過add()添加元素;經過update()添加元素

  5.2刪除:方法remove():指定刪除

      pop():隨機刪除.

      clear():清空集合

  5.3集合的其它操做。

    交集 :&

    並集:|

    差集:-

    反交集:^

 

第 五 章: IF語句

1.條件測試

  1.1.檢查是否相等,使用兩個等號(==)

  1.2.檢查是否不相等,使用驚歎號和等號(!= ),其中的驚歎號表示不。

  1.3.條件語句中可包含各類數學比較,如小於、小於等於、大於、大於等於。

  1.4.使用and 檢查多個條件;使用or 檢查多個條件。

  1.5.判斷特定的值是否已包含在列表中,可以使用關鍵字in。

  1.6.檢查特定值是否不包含在列表中,可以使用關鍵字not in

2.布爾表達式

  布爾表達式的結果要麼爲True ,要麼爲False 。

3. if 語句

  若是條件測試的結果爲True ,Python就會執行緊跟在if 語句後面的代碼;不然
Python將忽略這些代碼。

4.if-else 語句

  老是會執行兩個操做中的一個。

  常常須要檢查超過兩個的情形,爲此可以使用Python提供的if-elif-else 結構。

  使用多個elif 代碼塊。

  省略else 代碼塊

 

第 六 章 字典

1.使用字典

  字典 是一系列鍵—值對 。每一個鍵 都與一個值相關聯,你可使用鍵來訪問與之相關聯的值。與鍵相關聯的值能夠是數字、字符串、列表乃至字典。

2.訪問字典中的值

alien_0 = {'color': 'green'}
print(alien_0['color'])

結果爲:green

3.添加鍵—值對

  要添加鍵—值對,可依次指定字典名、用方括號括起的鍵和相關聯的值。

4.修改字典中的值。

  要修改字典中的值,可依次指定字典名、用方括號括起的鍵以及與該鍵相關聯的新值

5.刪除鍵—值對

  使用del 語句時,必須指定字典名和要刪除的鍵。

6.遍歷全部的鍵—值對

user = {
'username': 'efermi','first': 'enrico','last': 'fermi',
}
❶ for key, value in user_0.items():
❷ print("Key: " + key)
❸ print("Value: " + value)

  要編寫用於遍歷字典的for 循環,可聲明兩個變量,用於存儲鍵—值對中的鍵和值.   for 語句的第二部分包含字典名和方法items()

7.遍歷字典中的全部鍵 :方法keys()

languages = {
'jen': 'python','sarah': 'c','edward': 'ruby','phil': 'python',
}
 for name in languages.keys():
print(name.title())

8.按順序遍歷字典中的全部鍵

  獲取字典的元素時,獲取順序是不可預測的。要以特定的順序返回元素,一種辦法是在for 循環中對返回的鍵進行排序,可以使用函數sorted() 來得到按特定順序排列的鍵列表的副本。

languages = {
'jen': 'python','sarah': 'c','edward': 'ruby','phil': 'python',
}
for name in sorted(languages.keys()):
print(name.title() + ", thank you for taking the poll.")

9.遍歷字典中的全部值

  使用方法values() ,它返回一個值列表,而不包含任何鍵。

languages = {
'jen': 'python','sarah': 'c','edward': 'ruby','phil': 'python',
}
print("The following languages have been mentioned:")
for language in languages.values():
print(language.title())

10.嵌套

   須要將一系列字典存儲在列表中,或將列表做爲值存儲在字典中。即爲嵌套

 

第 七 章 用戶輸入和while 循環

1.函數input() 的工做原理:

  函數input() 讓程序暫停運行,等待用戶輸入一些文本。獲取用戶輸入後,Python將其存儲在一個變量中,以方便你使用。

  1.1使用int() 來獲取數值輸入

>>> age = input("How old are you? ")
How old are you? 21
>>> age
'21'

  1.2求模運算符

    求模運算符 (%)是一個頗有用的工具,它將兩個數相除並返回餘數。

2.while 循環簡介
  for 循環用於針對集合中的每一個元素都一個代碼塊,而while 循環不斷地運行,直到指定的條件不知足爲止。

  2.1使用while 循環 

number = 1
while number <= 5:
print(number)
number += 1

  2.2使用標誌

    可定義一個變量,用於判斷整個程序是否處於活動狀態。這個變量被稱爲標誌.

  2.3使用break 退出循環

    break 語句用於控制程序流程,能夠當即退出while 循環,再也不運行循環中餘下的代碼,也無論條件測試的結果如何。

  2.4在循環中使用continue

    使用continue 語句,返回到循環開頭,並根據條件測試結果決定是否繼續執行循環.

  2.5避免無限循環

    每一個while 循環都必須有中止運行的途徑,這樣纔不會沒完沒了地執行下去。

  2.6使用用戶輸入來填充字典   

responses = {}
# 設置一個標誌,指出調查是否繼續
polling_active = True
while polling_active:
# 提示輸入被調查者的名字和回答
name = input("\nWhat is your name? ")
response = input("Which mountain would you like to climb someday? ")
# 將答卷存儲在字典中
responses[name] = response
# 看看是否還有人要參與調查
 repeat = input("Would you like to let another person respond? (yes/ no) ")
if repeat == 'no':
polling_active = False
# 調查結束,顯示結果
print("\n--- Poll Results ---")
for name, response in responses.items():
print(name + " would like to climb " + response + ".")

 

第 八 章 函數

1.定義函數

 def greet_user():
   """顯示簡單的問候語"""
   print("Hello!")
 greet_user()

  1.1實參和形參

    實參是調用函數時傳遞給函數的信息。

  1.2位置實參

    Python必須將函數調用中的每一個實參都關聯到函數定義中的一個形參。

    位置實參的順序很重要,使用位置實參來調用函數時,若是實參的順序不正確,結果可能出乎意料。

  1.3關鍵字實參
    關鍵字實參 是傳遞給函數的名稱—值對。你直接在實參中將名稱和值關聯起來了,所以向函數傳遞實參時不會混淆。

  1.4默認值

    編寫函數時,可給每一個形參指定默認值

2.返回值

  2.1讓實參變成可選的

    有時候,須要讓實參變成可選的,這樣使用函數的人就只需在必要時才提供額外的信息。可以使用默認值來讓實參變成可選的。

3.返回字典

  函數可返回任何類型的值,包括列表和字典等較複雜的數據結構

4.結合使用函數和while 循環

def get_formatted_name(first_name, last_name):
    """返回整潔的姓名"""
    full_name = first_name + ' ' + last_name
    return full_name.title()
    # 這是一個無限循環!
    while True:
        print("\nPlease tell me your name:")
        f_name = input("First name: ")
        l_name = input("Last name: ")
        formatted_name = get_formatted_name(f_name, l_name)
        print("\nHello," + formatted_name + "!")

5.傳遞列表

def greet_users(names):
  """向列表中的每位用戶都發出簡單的問候"""
  for name in names:
  msg = "Hello, " + name.title() + "!"
  print(msg)
usernames = ['hannah', 'ty', 'margot']
greet_users(usernames)

6.結合使用位置實參和任意數量實參(*args)、關鍵字實參(**kwargs)。

def users(age,*args,**kwargs):
    """建立一個字典"""
    profile = {}
    profile['age'] = age

    for key, value in users.items():
    profile[key] = value
    return profile
users = build_profile(18,'zhangsan',location='princeton',field='physics')

7.導入特定的函數:

from module_name import function_name

8.使用as 給函數指定別名

from pizza import make_pizza as mp

9.使用as 給模塊指定別名

import pizza as p

10.導入模塊中的全部函數

from pizza import *

 

第 9 章 類

1.建立和使用類:類中的函數稱爲方法。

class Dog():
  def __init__(self, name, age):
    """初始化屬性name和age"""
    self.name = name
    self.age = ag
    self.high = 5

  def sit(self):
    """模擬小狗被命令時蹲下"""
    print(self.name.title() + " is now sitting.")
  def roll_over(self):
    """模擬小狗被命令時打滾"""
    print(self.name.title() + " rolled over!")

my_dog = Dog('xiaohei', 6)
print(my_dog.name)

  1.1 方法__init__():一個特殊的方法

    在方法的定義中,形參self 必不可少,還必須位於其餘形參的前面。

  1.2my_dog:一個實例,能夠調用Dog 類中定義的任何方法。

  1.3給屬性指定默認值

    self.high = 5

2.繼承

  編寫類時,並不是老是要從空白開始。若是你要編寫的類是另外一個現成類的特殊版本,可以使用繼承。一個類繼承 另外一個類時,它將自動得到另外一個類的全部屬性和方法;原有的
類稱爲父類 ,而新類稱爲子類 。子類繼承了其父類的全部屬性和方法,同時還能夠定義本身的屬性和方法。

class Car():
    snip
class ElectricCar(Car):   """電動汽車的獨特之處"""
  def __init__(self, make, model, year):   """初始化父類的屬性"""
  super().__init__(make, model, year)
  self.battery_size = 70 #給子類定義的屬性

  def describe_battery(self): #給子類定義的方法
  """打印一條描述電瓶容量的消息"""
  print("This car has a " + str(self.battery_size) + "-kWh battery."

  2.1給子類定義屬性和方法

     self.battery_size = 70  

     def describe_battery(self)

  2.2將實例用做屬性   

class Car():
  --snip--

class Battery():   """一次模擬電動汽車電瓶的簡單嘗試"""   def __init__(self, battery_size=70):     """初始化電瓶的屬性"""     self.battery_size = battery_size    def describe_battery(self):     """打印一條描述電瓶容量的消息"""     print("This car has a " + str(self.battery_size) + "-kWh battery.")
class ElectricCar(Car):   """電動汽車的獨特之處"""    def __init__(self, make, model, year):     """     初始化父類的屬性,再初始化電動汽車特有的屬性     """     super().__init__(make, model, year)     self.battery = Battery() #建立一個新的Battery 實例(因爲沒有指定尺寸,所以爲默認值70 ),並將該實例存儲在屬性self.battery 中。
my_tesla
= ElectricCar('tesla', 'model s', 2016) print(my_tesla.get_descriptive_name())

3.導入類

  3.1.Python容許將類存儲在模塊中,而後在主程序中導入所需的模塊。

  3.2.導入單個類.

from car import Car

  3.3.從一個模塊中導入多個類

from car import Car, ElectricCar

  3.4導入整個模塊

import car

  3.5導入模塊中的全部類

from module_name import *

4.Python標準庫

  Python標準庫 是一組模塊,安裝的Python都包含它。

相關文章
相關標籤/搜索