1. 程式人生 > >Python初始學習必要掌握知識點(5分鐘速學)

Python初始學習必要掌握知識點(5分鐘速學)

學習 基礎 程序員 編程菜鳥

1、字符串
python中單引號和雙引號使用完全相同。
使用三引號(‘‘‘或""")可以指定一個多行字符串。
轉義符 ‘\‘
反斜杠可以用來轉義,使用r可以讓反斜杠不發生轉義。。 如 r"this is a line with \n" 則\n會顯示,並不是換行。
按字面意義級聯字符串,如"this " "is " "string"會被自動轉換為this is string。
字符串可以用 + 運算符連接在一起,用 * 運算符重復。
Python 中的字符串有兩種索引方式,從左往右以 0 開始,從右往左以 -1 開始。
Python中的字符串不能改變。
Python 沒有單獨的字符類型,一個字符就是長度為 1 的字符串。
字符串的截取的語法格式如下:變量[頭下標:尾下標]
#!/usr/bin/python3

str=‘Runoob‘

print(str)                 # 輸出字符串
print(str[0:-1])           # 輸出第一個到倒數第二個的所有字符
print(str[0])              # 輸出字符串第一個字符
print(str[2:5])            # 輸出從第三個開始到第五個的字符
print(str[2:])             # 輸出從第三個開始的後的所有字符
print(str * 2)             # 輸出字符串兩次
print(str + ‘你好‘)        # 連接字符串

print(‘------------------------------‘)

print(‘hello\nrunoob‘)      # 使用反斜杠(\)+n轉義特殊字符
print(r‘hello\nrunoob‘)     # 在字符串前面添加一個 r,表示原始字符串,不會發生轉義

#打印結果如下

Runoob
Runoo
R
noo
noob
RunoobRunoob
Runoob你好
------------------------------
hello
runoob
hello\nrunoob

我分享一個我的群:725479218,群裏面有提供學習的地址,有想要學習的可以一起學習,還可提供技術交流

2、換行/不換行

print 默認輸出是換行的,如果要實現不換行需要在變量末尾加上 end="":
s = "lamxqx"
print(s[1:3],end="")
print(s*2)

結果:
amlamxqxlamxqx

------------------------------------------
s = "lamxqx"
print(s[1:3])
print(s*2)

結果:
am
lamxqxlamxqx

3、判斷類型

lass A:
    pass

class B(A):
    pass

isinstance(A(), A)  # returns True
type(A()) == A      # returns True
isinstance(B(), A)    # returns True
type(B()) == A        # returns False

--------------------------------------------
區別:
type()不會認為子類是一種父類類型。
isinstance()會認為子類是一種父類類型

面向對象

例子
--------------------------------------------------------------
#!/usr/bin/python
# -*- coding: UTF-8 -*-

class Employee:
   ‘所有員工的基類‘
   empCount = 0

   def __init__(self, name, salary):
      self.name = name
      self.salary = salary
      Employee.empCount += 1

   def displayCount(self):
     print "Total Employee %d" % Employee.empCount

   def displayEmployee(self):
      print "Name : ", self.name,  ", Salary: ", self.salary

"創建 Employee 類的第一個對象"
emp1 = Employee("Zara", 2000)
"創建 Employee 類的第二個對象"
emp2 = Employee("Manni", 5000)
emp1.displayEmployee()
emp2.displayEmployee()
print "Total Employee %d" % Employee.empCount

-------------------------------------------------------
知識點:
1、empCount 變量是一個類變量,它的值將在這個類的所有實例之間共享。你可以在內部類或外部類使用 Employee.empCount 訪問。

2、第一種方法__init__()方法是一種特殊的方法,被稱為類的構造函數或初始化方法,當創建了這個類的實例時就會調用該方法

3、self 代表類的實例,self 在定義類的方法時是必須有的,雖然在調用時不必傳入相應的參數。

執行以上代碼輸出結果如下:
Name :  Zara ,Salary:  2000
Name :  Manni ,Salary:  5000
Total Employee 2
你可以添加,刪除,修改類的屬性,如下所示:
emp1.age = 7  # 添加一個 ‘age‘ 屬性
emp1.age = 8  # 修改 ‘age‘ 屬性
del emp1.age  # 刪除 ‘age‘ 屬性
你也可以使用以下函數的方式來訪問屬性:
getattr(obj, name[, default]) : 訪問對象的屬性。
hasattr(obj,name) : 檢查是否存在一個屬性。
setattr(obj,name,value) : 設置一個屬性。如果屬性不存在,會創建一個新屬性。
delattr(obj, name) : 刪除屬性。
hasattr(emp1, ‘age‘)    # 如果存在 ‘age‘ 屬性返回 True。
getattr(emp1, ‘age‘)    # 返回 ‘age‘ 屬性的值
setattr(emp1, ‘age‘, 8) # 添加屬性 ‘age‘ 值為 8
delattr(emp1, ‘age‘)    # 刪除屬性 ‘age‘

----------------------------------------------------------

Python內置類屬性
__dict__ : 類的屬性(包含一個字典,由類的數據屬性組成)
__doc__ :類的文檔字符串
__name__: 類名
__module__: 類定義所在的模塊(類的全名是‘__main__.className‘,如果類位於一個導入模塊mymod中,那麽className.__module__ 等於 mymod)
__bases__ : 類的所有父類構成元素(包含了一個由所有父類組成的元組)
Python內置類屬性調用實例如下:
實例
#!/usr/bin/python
# -*- coding: UTF-8 -*-

class Employee:
   ‘所有員工的基類‘
   empCount = 0

   def __init__(self, name, salary):
      self.name = name
      self.salary = salary
      Employee.empCount += 1

   def displayCount(self):
     print "Total Employee %d" % Employee.empCount

   def displayEmployee(self):
      print "Name : ", self.name,  ", Salary: ", self.salary

print "Employee.__doc__:", Employee.__doc__
print "Employee.__name__:", Employee.__name__
print "Employee.__module__:", Employee.__module__
print "Employee.__bases__:", Employee.__bases__
print "Employee.__dict__:", Employee.__dict__
執行以上代碼輸出結果如下:
Employee.__doc__: 所有員工的基類
Employee.__name__: Employee
Employee.__module__: __main__
Employee.__bases__: ()
Employee.__dict__: {‘__module__‘: ‘__main__‘, ‘displayCount‘: <function displayCount at 0x10a939c80>, ‘empCount‘: 0, ‘displayEmployee‘: 
<function displayEmployee at 0x10a93caa0>, ‘__doc__‘: ‘\xe6\x89\x80\xe6\x9c\x89\xe5\x91\x98\xe5\xb7\xa5\xe7\x9a\x84\xe5\x9f\xba\xe7\xb1\xbb‘, ‘__init__‘: <function __init__ at 0x10a939578>}

Python初始學習必要掌握知識點(5分鐘速學)