python可以自定義at(python可以自定義變量類型嗎)

本文目錄一覽:

python如何定義新對象

Python可以自定義新的類,然後用這些類創建新對象。

class Fruit:

    def __init__(self, name):

        self.name = name

    def prntName(self):

        print self.name

這是一個簡單的Python類的實現。

fruit = Fruit(‘apple’)

fruit.prntName()

這樣子,我們就創建了一個自定義的新的對象了。

python AT命令求助

我只在Windows下用過pyserial,和你用的模塊略微有差別。

從code看,你用write方法發送字符以後,沒有回車(發送 \n 到串口),或許是因為這個,“AT+CGMI”其實沒有執行,所以也讀不出結果。

python行名怎麼自定義

1、cmd007 作為自定義命令名稱

2、cmd007 hello –name=Lily 作為自定義功能1的名稱hello打招呼,輸出:Hi, Lily

3、cmd007 eat –food=fish 作為自定義功能2的名稱food吃東西,輸出:I like to eat fish

(一)目錄結構如下:

cmd007 # 文件夾必須和自定義命令同名

│ __init__.py

│ __main__.py

(二)實現自定義命令和功能1

在__main__.py中

View Code

來到cmd007的上級目錄下,調出命令行客戶端,執行命名:

python cmd007

python cmd007 -V

python cmd007 hello –name=Lily –count=3

python cmd007 hello -n Lilei -c 2

分別輸出:

提示:如果將這個python包cmd007打包發布,然後安裝到python中去,那麼每行命令就不用輸入python關鍵字了。

(三)實現自定義命令、功能1、功能2

在__main__.py中增加代碼

# 自定義功能2:eat

@cli.command(name=”eat”)

@click.option(‘-f’, ‘–food’, help=”please input your like food”)

@click.option(‘-a’, ‘–and-you’, help=”ask echo other”, default=False)

def hello_command(food, and_you):

print(“I like to eat {0}”.format(food))

if and_you in [‘t’, ‘T’, ‘true’, ‘True’, True, 1, “1”]:

print(“And what is your favorite food ?”)

 

完整版:

View Code

執行

python cmd007 eat -f fish –and-you=1

輸出

延伸:

@click.option()中的參數詳解:

每個參數解釋如下:

name or flags – 選項字符串的名字或者列表,例如 foo 或者 -f, –foo。

action – 命令行遇到參數時的動作,默認值是 store。

store_const,表示賦值為const;

append,將遇到的值存儲成列表,也就是如果參數重複則會保存多個值;

append_const,將參數規範中定義的一個值保存到一個列表;

count,存儲遇到的次數;此外,也可以繼承 argparse.Action 自定義參數解析;

nargs – 應該讀取的命令行參數個數,可以是具體的數字,或者是?號,當不指定值時對於 Positional argument 使用 default,對於 Optional argument 使用 const;或者是 * 號,表示 0 或多個參數;或者是 + 號表示 1 或多個參數。

const – action 和 nargs 所需要的常量值。

default – 不指定參數時的默認值。

type – 命令行參數應該被轉換成的類型。

choices – 參數可允許的值的一個容器。

required – 可選參數是否可以省略 (僅針對可選參數)。

help – 參數的幫助信息,當指定為 argparse.SUPPRESS 時表示不顯示該參數的幫助信息.

metavar – 在 usage 說明中的參數名稱,對於必選參數默認就是參數名稱,對於可選參數默認是全大寫的參數名稱.

dest – 解析後的參數名稱,默認情況下,對於可選參數選取最長的名稱,中劃線轉換為下劃線.

python自定義函數有哪些?

Python的自定義函數格式中規中矩,用def引導自定義函數名,用括號給出該函數的參數,在冒號後換行通過縮進確定函數體。在格式上和條件判斷語句有些相似。

如果函數名和變量名衝突了,相當於重新賦值。而python解釋是從上到下的,也就是說此時誰在下面誰佔用這個變量名。剩下的那個就只能在內存中等待垃圾回收了。

自定義函數的參數:

按道理來說,即使Python不嚴格要求定義函數參數,但這方面的知識有助於理解自定義函數中參數操作的情況,還是應該說明一下的。

可以簡單地理解為在定義函數時括號中聲明的參數是我們在函數使用中會用到的參數,在調用函數時括號中的變量就是參加函數運算用到的變量,換個名字參數(用於定義)和變量(用於調用)就足以理解了。

python如何自定義異常?

8.5. 用戶自定義異常

在程序中可以通過創建新的異常類型來命名自己的異常(Python 類的內容請參見 類 )。異常類通常應該直接或間接的從 Exception 類派生,例如:

class MyError(Exception):

… def __init__(self, value):

… self.value = value

… def __str__(self):

… return repr(self.value)

try:

… raise MyError(2*2)

… except MyError as e:

… print(‘My exception occurred, value:’, e.value)

My exception occurred, value: 4

raise MyError(‘oops!’)

Traceback (most recent call last):

File “

“, line 1, in ?

__main__.MyError: ‘oops!’

在這個例子中,Exception 默認的 __init__() 被覆蓋。新的方式簡單的創建 value 屬性。這就替換了原來創建 args 屬性的方式。

異常類中可以定義任何其它類中可以定義的東西,但是通常為了保持簡單,只在其中加入幾個屬性信息,以供異常處理句柄提取。如果一個新創建的模塊中需要拋出幾種不同的錯誤時,一個通常的作法是為該模塊定義一個異常基類,然後針對不同的錯誤類型派生出對應的異常子類:

class Error(Exception):

“””Base class for exceptions in this module.”””

pass

class InputError(Error):

“””Exception raised for errors in the input.

Attributes:

expression — input expression in which the error occurred

message — explanation of the error

“””

def __init__(self, expression, message):

self.expression = expression

self.message = message

class TransitionError(Error):

“””Raised when an operation attempts a state transition that’s not

allowed.

Attributes:

previous — state at beginning of transition

next — attempted new state

message — explanation of why the specific transition is not allowed

“””

def __init__(self, previous, next, message):

self.previous = previous

self.next = next

self.message = message

與標準異常相似,大多數異常的命名都以 “Error” 結尾。

很多標準模塊中都定義了自己的異常,用以報告在他們所定義的函數中可能發生的錯誤。

python獲取給手機發送AT命令如何獲取返回值?

安裝一個pyseries包。 然後找一個AT標準的命令集。似乎有人封裝好了。我以前見過。

然後剩下的事情就超 簡單了。 測試通過就可以用。

好象以前是用這個做運維時,給運維人員發短信用的。這個功能十幾年前就成熟了。現在都應該 有現成的python模塊。

原創文章,作者:WMPF,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/139555.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
WMPF的頭像WMPF
上一篇 2024-10-04 00:22
下一篇 2024-10-04 00:22

相關推薦

  • Python中引入上一級目錄中函數

    Python中經常需要調用其他文件夾中的模塊或函數,其中一個常見的操作是引入上一級目錄中的函數。在此,我們將從多個角度詳細解釋如何在Python中引入上一級目錄的函數。 一、加入環…

    編程 2025-04-29
  • Python周杰倫代碼用法介紹

    本文將從多個方面對Python周杰倫代碼進行詳細的闡述。 一、代碼介紹 from urllib.request import urlopen from bs4 import Bea…

    編程 2025-04-29
  • Python計算陽曆日期對應周幾

    本文介紹如何通過Python計算任意陽曆日期對應周幾。 一、獲取日期 獲取日期可以通過Python內置的模塊datetime實現,示例代碼如下: from datetime imp…

    編程 2025-04-29
  • Python列表中負數的個數

    Python列表是一個有序的集合,可以存儲多個不同類型的元素。而負數是指小於0的整數。在Python列表中,我們想要找到負數的個數,可以通過以下幾個方面進行實現。 一、使用循環遍歷…

    編程 2025-04-29
  • 如何查看Anaconda中Python路徑

    對Anaconda中Python路徑即conda環境的查看進行詳細的闡述。 一、使用命令行查看 1、在Windows系統中,可以使用命令提示符(cmd)或者Anaconda Pro…

    編程 2025-04-29
  • Python清華鏡像下載

    Python清華鏡像是一個高質量的Python開發資源鏡像站,提供了Python及其相關的開發工具、框架和文檔的下載服務。本文將從以下幾個方面對Python清華鏡像下載進行詳細的闡…

    編程 2025-04-29
  • python強行終止程序快捷鍵

    本文將從多個方面對python強行終止程序快捷鍵進行詳細闡述,並提供相應代碼示例。 一、Ctrl+C快捷鍵 Ctrl+C快捷鍵是在終端中經常用來強行終止運行的程序。當你在終端中運行…

    編程 2025-04-29
  • 蝴蝶優化算法Python版

    蝴蝶優化算法是一種基於仿生學的優化算法,模仿自然界中的蝴蝶進行搜索。它可以應用於多個領域的優化問題,包括數學優化、工程問題、機器學習等。本文將從多個方面對蝴蝶優化算法Python版…

    編程 2025-04-29
  • Python字典去重複工具

    使用Python語言編寫字典去重複工具,可幫助用戶快速去重複。 一、字典去重複工具的需求 在使用Python編寫程序時,我們經常需要處理數據文件,其中包含了大量的重複數據。為了方便…

    編程 2025-04-29
  • Python程序需要編譯才能執行

    Python 被廣泛應用於數據分析、人工智能、科學計算等領域,它的靈活性和簡單易學的性質使得越來越多的人喜歡使用 Python 進行編程。然而,在 Python 中程序執行的方式不…

    編程 2025-04-29

發表回復

登錄後才能評論