Heim  >  Artikel  >  Backend-Entwicklung  >  Zehn Zeilen Python-Code zur Implementierung cooler Funktionen

Zehn Zeilen Python-Code zur Implementierung cooler Funktionen

WBOY
WBOYnach vorne
2023-04-12 14:43:031857Durchsuche

Zehn Zeilen Python-Code zur Implementierung cooler Funktionen

1. QR-Code generieren

QR-Code wird auch als 2D-Barcode bezeichnet. QR steht für Quick Response, eine in den letzten Jahren sehr beliebte Codierungsmethode Ein QR-Code ist auch sehr einfach. Um einen QR-Code zu generieren, müssen wir zunächst das MyQR-Modul installieren :

pip install qrcode

Nachdem die Installation abgeschlossen ist, können wir mit dem Schreiben des Codes beginnen:

import qrcode
text = input(输入文字或URL:)
# 设置URL必须添加http://
img =qrcode.make(text)
img.save()
#保存图片至本地目录,可以设定路径
img.show()

Nachdem wir den Code ausgeführt haben, wird unter dem Projekt ein QR-Code generiert. Natürlich können wir den QR-Code auch anreichern:

Wir installieren zunächst das MyQR-Modul

pip installmyqr
def gakki_code():
version, level, qr_name = myqr.run(
words=https://520mg.com/it/#/main/2,
# 可以是字符串,也可以是网址(前面要加http(s)://)
version=1,# 设置容错率为最高
level='H',
# 控制纠错水平,范围是L、M、Q、H,从左到右依次升高
picture=gakki.gif,
# 将二维码和图片合成
colorized=True,# 彩色二维码
contrast=1.0,
 # 用以调节图片的对比度,1.0 表示原始图片,更小的值表示更低对比度,更大反之。默认为1.0
brightness=1.0,
# 用来调节图片的亮度,其余用法和取值同上
save_name=gakki_code.gif,
# 保存文件的名字,格式可以是jpg,png,bmp,gif
save_dir=os.getcwd()# 控制位置
)

 gakki_code()

Darüber hinaus unterstützt MyQR auch dynamische Bilder.

2. Wortwolke generieren

Wortwolke, auch Wortwolke genannt, ist eine visuell hervorstechende Darstellung von „Schlüsselwörtern“, die häufig in Textdaten vorkommen, und bildet dabei eine Darstellung der Schlüsselwörter, um ein wolkenähnliches Farbbild zu bilden So kann die Hauptbedeutung der Textdaten auf einen Blick verstanden werden.

Aber als alter Programmierer verwende ich immer noch gerne Code, um meine eigene Wortwolke zu generieren. Ist das kompliziert? Wird es lange dauern? In vielen Texten werden verschiedene Methoden vorgestellt, tatsächlich sind jedoch nur 10 Zeilen Python-Code erforderlich.

Installieren Sie zunächst die erforderlichen Bibliotheken Wortsegmentierungsbibliothek der Cloud-Generierungsbibliothek Wordcloud und Jieba

4 Zeilen, die die lokale Datei lesen

5 bis 6 Zeilen, Verwendung von Jieba zum Segmentieren der Wörter und Trennen der Ergebnisse der Wortsegmentierung durch Leerzeichen Zehn Zeilen Python-Code zur Implementierung cooler Funktionen

7 Zeilen, denn der Text erzeugt nach der Wortsegmentierung eine Wortwolke.

8 bis 10 Zeilen, verwenden Sie Pyplot, um das Wortwolkendiagramm anzuzeigen.
  • Das ist einer der Gründe, warum ich Python mag, es ist einfach und klar.
  • 3. Batch-Cutout
  • Die Implementierung von Cutout erfordert die Hilfe von Baidu Feipiaos Deep-Learning-Tool PaddlePaddle. Das erste ist PaddlePaddle. Ein weiteres ist das Paddlehub-Modell Bibliothek:
  • pip install wordcloud
    pip install jieba
    pip install matplotlib
    
    
  • Als nächstes benötigen wir nur 5 Codezeilen, um den Batch-Ausschnitt zu realisieren:
  • import matplotlib.pyplot as plt
    from wordcloud import WordCloud
    import jieba
    text_from_file_with_apath = open('/Users/linuxmi/linuxmi.txt').read()
    wordlist_after_jieba = jieba.cut(text_from_file_with_apath, cut_all = True)
    wl_space_split =.join(wordlist_after_jieba)
    my_wordcloud = WordCloud().generate(wl_space_split)
    plt.imshow(my_wordcloud)
    plt.axis(off)
    plt.show()
    
    
  • 4. Text-Emotionserkennung

Vor PaddlePaddle ist auch die Verarbeitung natürlicher Sprache sehr einfach geworden. Um die Text-Emotionserkennung zu realisieren, müssen wir auch PaddlePaddle und Paddlehub installieren. Informationen zur spezifischen Installation finden Sie in Teil 3. Dann kommt unser Codeteil:

python -m pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple

Das Erkennungsergebnis ist eine Wörterbuchliste:

pip install -i https://mirror.baidu.com/pypi/simple paddlehub

Das Feld sentiment_key enthält Stimmungsinformationen, siehe Python-Verarbeitung in natürlicher Sprache erfordert nur 5 Zeilen Code.

5. Identifizieren Sie, ob Sie eine Maske tragen

Dies ist auch ein Produkt, das PaddlePaddle und Paddlehub gemäß den oben genannten Schritten installiert und dann mit dem Schreiben des Codes begonnen hat:

import os, paddlehub as hub
humanseg = hub.Module(name='deeplabv3p_xception65_humanseg')# 加载模型
path = 'D:/CodeField/Workplace/PythonWorkplace/GrapImage/'# 文件目录
files = [path + i for i in os.listdir(path)]# 获取文件列表
results = humanseg.segmentation(data={'image':files})# 抠图

Nachdem Sie das obige Programm ausgeführt haben, wird der Ordner „detection_result“ angezeigt wird im Rahmen des Projekts generiert, die Erkennungsergebnisse werden darin enthalten sein.

6. Einfache Informationsbombardierung

Es gibt viele Möglichkeiten, Eingabegeräte in Python zu steuern. Wir können das Win32- oder Pynput-Modul verwenden. Wir können den Effekt der Informationsbombardierung durch einfache Schleifenoperationen erzielen. Am Beispiel von Pynput müssen wir zuerst das Modul installieren:

import paddlehub as hub
senta = hub.Module(name='senta_lstm')# 加载模型
sentence = [# 准备要识别的语句
'你真美', '你真丑', '我好难过', '我不开心', '这个游戏好好玩', '什么垃圾游戏',
]
results = senta.sentiment_classify(data={text:sentence})# 情绪识别
# 输出识别结果
for result in results:
print(result)

Bevor wir den Code schreiben, müssen wir die Koordinaten des Eingabefelds manuell abrufen:

{'text': '你真美', 'sentiment_label': 1, 'sentiment_key': 'positive', 'positive_probs': 0.9602, 'negative_probs': 0.0398}
{'text': '你真丑', 'sentiment_label': 0, 'sentiment_key': 'negative', 'positive_probs': 0.0033, 'negative_probs': 0.9967}
{'text': '我好难过', 'sentiment_label': 1, 'sentiment_key': 'positive', 'positive_probs': 0.5324, 'negative_probs': 0.4676}
{'text': '我不开心', 'sentiment_label': 0, 'sentiment_key': 'negative', 'positive_probs': 0.1936, 'negative_probs': 0.8064}
{'text': '这个游戏好好玩', 'sentiment_label': 1, 'sentiment_key': 'positive', 'positive_probs': 0.9933, 'negative_probs': 0.0067}
{'text': '什么垃圾游戏', 'sentiment_label': 0, 'sentiment_key': 'negative', 'positive_probs': 0.0108, 'negative_probs': 0.9892}

Möglicherweise gibt es eine effizientere Methode, aber ich weiß nicht wie.

Nach Erhalt können wir die Koordinaten aufzeichnen und das Nachrichtenfenster nicht verschieben. Dann führen wir den folgenden Code aus und schalten das Fenster auf die Nachrichtenseite um:

import paddlehub as hub
# 加载模型
module = hub.Module(name='pyramidbox_lite_mobile_mask')
# 图片列表
image_list = ['face.jpg']
# 获取图片字典
input_dict = {'image':image_list}
# 检测是否带了口罩
module.face_detection(data=input_dict)

Ich gebe zu, das sind mehr als 10 Zeilen Code und es ist kein High-End.

7. Identifizieren Sie Text in Bildern

Wir können Tesseract verwenden, um Text in Bildern zu identifizieren. Die Implementierung in Python ist sehr einfach, aber das Herunterladen von Dateien und das Konfigurieren von Umgebungsvariablen ist in der Anfangsphase etwas umständlich, daher zeigt dieser Artikel nur der Code:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ pynput

wobei text der erkannte Text ist. Wenn Sie mit der Genauigkeit nicht zufrieden sind, können Sie auch die universelle Textschnittstelle von Baidu nutzen.

8. Einfaches Minispiel

Es fühlt sich sehr effizient an, mit ein paar kleinen Beispielen zu beginnen.

from pynput import mouse
# 创建一个鼠标
m_mouse = mouse.Controller()
# 输出鼠标位置
print(m_mouse.position)

Erraten Sie kleine Fälle und üben Sie vor Ihren Augen

Das obige ist der detaillierte Inhalt vonZehn Zeilen Python-Code zur Implementierung cooler Funktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51cto.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen