python入門筆記

emmm,這個筆記主要是給自己看到的,整理了李茂老師《python硬件編程實戰》一書中的內容。
【普通python腳本文件的編寫規範框架】
一般腳本文件的編寫主要包含,SheBang部分、模塊信息描述部分、導入第三方庫部分、模塊函數主體、模塊測試代碼。
其中的 name == “main“: 具體的含義在這個博客中解釋的挺好的:https://www.cnblogs.com/alan-babyblog/p/5147770.html 就不贅述了。

# !\usr\bin\python
# -*- coding: utf-8 -*-

"""
----------------------------------------------------------------------------------------------------
Function:

Author:

Version:

Contact:
----------------------------------------------------------------------------------------------------
"""


# -------------------------------------import-------------------------------------------------------
import platform

# -------------------------------------function-----------------------------------------------------
def demo():
    print('This is a demo on how to write a formal python script.')  # 可以使用中文註釋


####################################################################################################
if __name__ == "__main__":  # __main__ 和 __name__的使用
    print('i am(hello.py) doing a test on the written program!')
    demo()
else:
    print('i am(hello.py) being imported by another file!')

【類腳本文件的編寫方式】
下面的程序主要講到的是全局變量、類全局變量、示例變量、臨時變量之間的愛恨情仇。

# !\usr\bin\python
# -*- coding: utf-8 -*-

"""
----------------------------------------------------------------------------------------------------
Function: 介紹面向對象編程的基礎知識

Author:

Version: 

Contact:
----------------------------------------------------------------------------------------------------
"""


# -------------------------------------import-------------------------------------------------------
import hello

# python中每個calss的代碼中的第一個參數就是self,class中訪問對應的變量及調用函數的格式爲self.valueName, self.function()
# 的形式。這裏的self指的是示例instance本身。如果沒有寫self, 而是直接使用變量,那麼實際上調用的不是示例中的變量和函數,而
# 是其他部分的變量和函數。1)如果沒有在class的最初__init__函數中正確地初始化實例變量,將會導致後續引用實例變量出錯。如果
# 以類中的變量作爲參照,那麼變量分爲全局變量、臨時局部變量、類變量


# -------------------------------------function-----------------------------------------------------
def a2init():
    hello.demo()
    print('this is a new python file')


name = "whole global name"  # 可直接對全局變量進行訪問


class Person:
    name = "class global name"  # 調用該類全局變量需使用Person.name

    def __init__(self, newPersonName):
        # __init__的含義是初始化,爲對應的類Class本身初始化,支持帶參數的類的初始化,實現對類本身相關內容的初始化
        self.name = newPersonName   # 實例化之後,調用該類屬性變量需使用instance.name
        name = newPersonName   # 如果前面沒有加self前綴,則是自動變量(臨時變量)。屬於__init__函數中的局部變量。

    def say_your_name(self):
        print('my name is %s' % self.name)


def selfAndInitDemo():
    person_instance = Person('crifan')  # class的實例化
    person_instance.say_your_name()      # 實例化的函數調用方式
    print('all people name %s'% Person.name)  # 類全局變量的調用方式


# python函數的語法結構
"""
def function( parameters ):
    "function docstring"
    function_suite
    return [expression]
"""


def printInputStr(inputstr):
    "此函數是爲了演示,打印輸入的字符串"
    print(inputstr)


####################################################################################################
if __name__ == "__main__":
    a2init()
    selfAndInitDemo()
    printInputStr("第一次調用函數。")
    printInputStr("再次調用函數。")
    print("函數printInputStr的docstrings是:", printInputStr.__doc__)  # __doc__是每個函數的內置屬性

# python中的變量無需定義,可直接使用。
# 【全局變量】,不論是其他普通函數中還是Class類中,全局變量都是可以通過對應的函數名爲直接引用
# 【局部變量】,對於函數內,包括類Class的函數內,普通的變量都是自動臨時變量。 普通局部變量(automatic variable),而局部
# 變量的優先級大於外部變量的優先級。如果函數內部出現了和全局變量同名的變量,則說明是全局變量。如果函數內,沒有同名的局部
# 變量,則對應的變量是全局變量。
# 【類的變量】,類的變量在累的範圍內只能夠通過className.propertyName或者是ClassName.VariableName去訪問當前類的ClassName
# 的變量PropertyName。即,類的全局變量
# 【示例變量】,示例變量理論上是用InstanceObject.PropertyName訪問的。此處由於類的函數第一個參數的名字定義爲Instance變量,
# 且名字叫做self,所以就變成了self.PropertyName了。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章