Rumah > pembangunan bahagian belakang > Tutorial Python > Apakah perkara menarik yang boleh dilakukan dengan sepuluh baris kod Python?

Apakah perkara menarik yang boleh dilakukan dengan sepuluh baris kod Python?

WBOY
Lepaskan: 2023-05-04 19:58:05
ke hadapan
1348 orang telah melayarinya

Mari kita lihat apakah fungsi menarik yang boleh kita capai dengan tidak lebih daripada 10 baris kod.

1. Jana kod QR

Kod QR juga dipanggil kod bar dua dimensi Kod QR yang biasa digunakan ialah QR Kod peranti dalam beberapa tahun kebelakangan ini. Kaedah pengekodan yang popular, dan menjana kod QR juga sangat mudah Dalam Python, kita boleh menjana kod QR melalui modul MyQR, kita hanya memerlukan 2 baris kod pasang modul MyQR Di sini kami memilih muat turun sumber domestik:

pip install qrcode 
Salin selepas log masuk

Selepas pemasangan selesai, kami boleh mula menulis kod:

import qrcode

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

Selepas kami laksanakan kod, ia akan dijana di bawah projek A kod QR. Sudah tentu, kami juga boleh memperkayakan kod QR:

Kami mula-mula memasang modul MyQR

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()
Salin selepas log masuk

Selain itu, MyQR juga menyokong gambar dinamik .

2. Jana awan perkataan

Awan perkataan, juga dipanggil awan perkataan, ialah persembahan visual yang menonjol bagi "kata kunci" yang muncul lebih kerap dalam data teks, membentuk kunci perkataan membentuk gambar berwarna seperti awan, supaya makna utama data teks dapat difahami sepintas lalu.

Tetapi sebagai pengekod lama, saya masih suka menggunakan kod untuk menghasilkan awan perkataan saya sendiri Adakah ia mengambil masa yang lama? baris Hanya kod python.

Mula-mula pasang perpustakaan yang diperlukan

pip install wordcloud
pip install jieba
pip install matplotlib
import matplotlib.pyplot as plt
from wordcloud import WordCloud
import jieba

text_from_file_with_apath = open('/Users/hecom/23tips.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()
Salin selepas log masuk

Itu sahaja, awan perkataan yang dihasilkan adalah seperti ini:

Apakah perkara menarik yang boleh dilakukan dengan sepuluh baris kod Python?

Baca 10 baris kod ini:

  • Baris 1 hingga 3 masing-masing mengimport pustaka lukisan matplotlib, wordcloud pustaka generasi awan dan pustaka pembahagian perkataan bagi jieba;
  • Baris 4 adalah untuk membaca fail setempat Teks yang digunakan dalam kod ialah "Dua atau tiga perkara tentang pengurusan R&D di mata Lao Cao" dalam akaun awam ini.
  • 5-6 baris, gunakan jieba untuk membahagikan perkataan dan pisahkan hasil pembahagian perkataan dengan ruang
  • 7 baris, jana awan perkataan untuk teks selepas pembahagian perkataan;
  • Dalam baris 8 hingga 10, gunakan pyplot untuk memaparkan gambarajah awan perkataan.
Ini antara sebab saya suka ular sawa, ianya mudah dan jelas.

3. Potongan kelompok

Pelaksanaan potongan memerlukan bantuan dayung alat pembelajaran mendalam Baidu Fei Kami perlu memasang dua modul untuk melaksanakan potongan kelompok dengan cepat ialah PaddlePaddle:

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

dan satu lagi ialah perpustakaan model paddlehub:

pip install -i https://mirror.baidu.com/pypi/simple paddlehub
Salin selepas log masuk

Seterusnya kami hanya memerlukan 5 baris kod Anda boleh mencapai potongan kelompok:

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})# 抠图
Salin selepas log masuk

4. Teks pengecaman emosi

Di hadapan dayung, pemprosesan bahasa semula jadi Ia juga menjadi sangat mudah. Untuk merealisasikan pengecaman emosi teks, kami juga perlu memasang PaddlePaddle dan Paddlehub Untuk pemasangan khusus, sila rujuk Bahagian 3. Kemudian datang bahagian kod kami:

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

Hasil pengecaman ialah senarai kamus:

{'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}
Salin selepas log masuk

Medan sentimen_key mengandungi maklumat sentimen Untuk analisis terperinci, sila lihat pemprosesan bahasa semula jadi Python hanya memerlukan 5 baris kod.

5 Kenal pasti sama ada anda memakai topeng

Berikut juga produk yang menggunakan PaddlePaddle kami memasang PaddlePaddle dan Paddlehub mengikut langkah di atas, dan kemudian mula menulis kod:

import paddlehub sebagai hab# Muatkan modul model = hub.Modul(nama='pyramidbox_lite_mobile_mask')# Senarai imej senarai_imej = ['face.jpg']# Dapatkan input_dict kamus imej = {'image':image_list}# Semak sama ada ia disertakan modul Mask.face_detection(data=input_dict)

Selepas melaksanakan prosedur di atas, folder detection_result akan dijana di bawah projek dan hasil pengecaman akan berada di dalamnya.

6. Pengeboman maklumat mudah

Terdapat banyak cara untuk mengawal peranti input dalam Python Kita boleh menggunakan modul win32 atau pynput. Kita boleh mencapai kesan pengeboman maklumat melalui operasi gelung mudah Mengambil pynput sebagai contoh, kita perlu memasang modul terlebih dahulu:

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple/ pynput
Salin selepas log masuk

Sebelum menulis kod, kita perlu mendapatkan koordinat secara manual. kotak input:

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

Mungkin ada cara yang lebih cekap, tetapi saya tidak akan melakukannya.

Selepas mendapatkannya, kita boleh merekodkan koordinat dan tidak mengalihkan tetingkap mesej. Kemudian kami laksanakan kod berikut dan tukar tetingkap ke halaman mesej:

import time
from pynput import mouse, keyboard
time.sleep(5)
m_mouse = mouse.Controller()# 创建一个鼠标
m_keyboard = keyboard.Controller()# 创建一个键盘
m_mouse.position = (850, 670) # 将鼠标移动到指定位置
m_mouse.click(mouse.Button.left) # 点击鼠标左键
while(True):
m_keyboard.type('你好')# 打字
m_keyboard.press(keyboard.Key.enter)# 按下enter
m_keyboard.release(keyboard.Key.enter)# 松开enter
time.sleep(0.5)# 等待 0.5秒
Salin selepas log masuk

Saya akui, ini lebih daripada 10 baris kod, dan ia bukan high-end.

7 Kenal pasti teks dalam gambar

Kita boleh menggunakan Tesseract untuk mengenal pasti teks dalam gambar Ia sangat mudah untuk dilaksanakan dalam Python, tetapi ia memerlukan memuat turun fail dan mengkonfigurasi pembolehubah persekitaran peringkat awal agak menyusahkan, jadi artikel ini hanya menunjukkan kod:

import pytesseract
from PIL import Image
img = Image.open('text.jpg')
text = pytesseract.image_to_string(img)
print(text)
Salin selepas log masuk

di mana teks ialah teks yang diiktiraf. Jika anda tidak berpuas hati dengan ketepatan, anda juga boleh menggunakan antara muka teks universal Baidu.

八、简单的小游戏

从一些小例子入门感觉效率很高。

import random
print(1-100数字猜谜游戏!)
num = random.randint(1,100)
guess =guess

i = 0
while guess != num:
i += 1
guess = int(input(请输入你猜的数字:))

if guess == num:
print(恭喜,你猜对了!)
elif guess < num:
print(你猜的数小了...)
else:
print(你猜的数大了...)

print(你总共猜了%d %i + 次)
Salin selepas log masuk

猜数小案例当着练练手


Atas ialah kandungan terperinci Apakah perkara menarik yang boleh dilakukan dengan sepuluh baris kod Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:51cto.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan