中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python 使用三引號時常見的錯誤有哪些

發布時間:2020-10-26 16:47:21 來源:億速云 閱讀:350 作者:Leah 欄目:開發技術

本篇文章給大家分享的是有關python 使用三引號時常見的錯誤有哪些,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

請看如下代碼,執行后,思考生成的兩個二維碼為什么不一樣?

# -*- coding:utf-8 -*-
from tkinter import *
from tkinter import ttk
from PIL import ImageTk
import qrcode
class QRcodeImage(object):
  '''生成二維碼圖片類'''

  def __init__(self, content, fcolor=None, bcolor=None, size=None):
    '''
    參數說明:
    content:二維碼圖片的文本內容
    fcolor:二維碼圖片的前景色
    bcolor:二維碼圖片的背景色
    size:二維碼大小
    '''
    qr = qrcode.QRCode(version=2,
              error_correction=qrcode.constants.ERROR_CORRECT_L, #容錯率
              box_size=8,
              border=2) # 實例化QRCode類,得到qr對象
    qr.add_data(content) # 二維碼內容添加到圖片中
    qr.make(fit=True) # 圖片中的二維碼大小自適應,以保證二維碼內容能完整繪制
    if fcolor == None: fcolor = 'black' #默認前景色為黑色
    if bcolor == None:bcolor = 'white' #默認背景色為白色
    img = qr.make_image(fill_color=fcolor,
              back_color=bcolor) #生成彩色二維碼圖片
    img = img.convert(mode="RGBA") # 將圖片的模式轉換為彩色透明模式
    if size == None: size = 150 #默認圖片大小
    self.img = img.resize((size, size))

  def getPhotoImage(self):
    '''轉換為PhotoImage'''
    tkimg = ImageTk.PhotoImage(self.img)
    return tkimg
def cvfill():
  cv.create_window(200, 50, window=lbimg1, width=155, height=155,
           anchor=NW,
           )
  cv.create_window(50, 50, window=lbimg2, width=155, height=155,
         anchor=NW,
         )
  global img1
  img1 = QRcodeImage(content).getPhotoImage()
  lbimg1.config(image=img1)
  content1='''BEGIN:VCARD
  FN:steven
  TITLE:Drector
  TEL;TYPE=CELL:15201011234
  NOTE:
  END:VCARD '''
  global img2
  img2=QRcodeImage(content1).getPhotoImage()
  lbimg2.config(image=img2)
root = Tk()


cv = Canvas(root, width='94m', height='54m', bg='#F0F8FF',
    highlightbackground='gold',
    highlightthickness=2,
    )
cv.pack(pady=10)

lbimg1 = Label()
lbimg2 = Label()
content='''BEGIN:VCARD
FN:steven
TITLE:Drector
TEL;TYPE=CELL:15201011234
NOTE:
END:VCARD '''
cvfill()
mainloop()

執行上述代碼,結果如下圖所示:

python 使用三引號時常見的錯誤有哪些

明顯兩個二維碼圖片不同,而出現這樣的差異的原因就出現在全局變量content和局部變量content1的賦值上。

content的賦值后的結果為:

content = BEGIN:VCARD\nFN:steven\nTITLE:Drector\nTEL;TYPE=CELL:15201011234\nNOTE:\nEND:VCARD

而content1的賦值后的結果為:

content1 = BEGIN:VCARD\n  FN:steven\n  TITLE:Drector\n  TEL;TYPE=CELL:15201011234\n  NOTE:\n  END:VCARD

明顯content和content1的值的內容不一樣,content1多了很多空格字符。造成這樣結果的原因就是因為在函數cvfill()中,三引號'''中的內容從第二行開始進行了縮進,導致增加了很多縮進的空格,這是很容易犯的一個小錯誤,并且不易被注意到。

以上就是python 使用三引號時常見的錯誤有哪些,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

手游| 松溪县| 周宁县| 宾阳县| 梅州市| 惠东县| 孝感市| 乳山市| 丰台区| 蒲江县| 长岭县| 固安县| 阳春市| 马公市| 玉林市| 武川县| 武宁县| 英德市| 桑植县| 什邡市| 若尔盖县| 体育| 呼图壁县| 北宁市| 丹阳市| 登封市| 巩义市| 永泰县| 苏尼特右旗| 武安市| 施甸县| 资溪县| 新干县| 尖扎县| 高青县| 沙田区| 乐陵市| 陕西省| 濮阳县| 荥经县| 黔南|