一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

21個(gè)有趣的Python腳本,讓你從入門到精通

 新用戶62592529 2024-12-12

即使你是零基礎(chǔ)的小白,也不用擔(dān)心,我會(huì)用最通俗易懂的語言和生活中的例子來解釋,讓你輕松掌握。

1. Hello, World!:編程世界的敲門磚

每個(gè)程序員的第一個(gè)程序幾乎都是“Hello, World!”,它象征著你正式踏入了編程的世界。就像學(xué)習(xí)任何一門外語,第一句話都是“你好”一樣,這是開啟新征程的第一步。

# Hello, World! 程序
print('Hello, World!')

這段代碼非常簡單,print()函數(shù)的作用就是在屏幕上顯示括號(hào)里的內(nèi)容。就像你在微信上發(fā)送消息一樣,你輸入的內(nèi)容會(huì)顯示在對(duì)方的屏幕上。

2. 簡易計(jì)算器:讓Python幫你算算數(shù)

生活中我們經(jīng)常需要進(jìn)行一些簡單的計(jì)算,Python可以輕松地扮演計(jì)算器的角色。

# 簡易計(jì)算器
num1 = float(input('請(qǐng)輸入第一個(gè)數(shù)字:')) # 獲取用戶輸入的第一個(gè)數(shù)字并轉(zhuǎn)換為浮點(diǎn)數(shù)
num2 = float(input('請(qǐng)輸入第二個(gè)數(shù)字:')) # 獲取用戶輸入的第二個(gè)數(shù)字并轉(zhuǎn)換為浮點(diǎn)數(shù)
operator = input('請(qǐng)輸入運(yùn)算符(+、-、*、/):') # 獲取用戶輸入的運(yùn)算符

if operator == '+':
    result = num1 + num2
elif operator == '-':
    result = num1 - num2
elif operator == '*':
    result = num1 * num2
elif operator == '/':
    if num2 == 0:  # 處理除數(shù)為0的情況
        print('除數(shù)不能為0')
    else:
        result = num1 / num2
else:
    print('無效的運(yùn)算符')

if 'result' in locals(): # 檢查result變量是否存在,避免未定義錯(cuò)誤
    print('結(jié)果:', result)

這個(gè)簡易計(jì)算器可以進(jìn)行加減乘除運(yùn)算。input()函數(shù)用于獲取用戶的輸入,就像你在ATM機(jī)上輸入密碼一樣。if-elif-else語句用于判斷不同的運(yùn)算符,就像你在選擇外賣平臺(tái)上的不同菜品一樣。

3. 猜數(shù)字:和Python玩?zhèn)€游戲

讓我們來玩一個(gè)猜數(shù)字的游戲,讓Python隨機(jī)生成一個(gè)數(shù)字,你來猜猜看。

# 猜數(shù)字游戲
import random

number = random.randint(1100) # 生成1100之間的隨機(jī)整數(shù)
guess = 0
while guess != number:
    guess = int(input('猜一個(gè)1到100之間的數(shù)字:'))
    if guess < number:
        print('太小了,再試試!')
    elif guess > number:
        print('太大了,再試試!')
    else:
        print('恭喜你,猜對(duì)了!')

random.randint(1, 100)會(huì)生成一個(gè)1到100之間的隨機(jī)整數(shù),就像抽獎(jiǎng)一樣,你不知道會(huì)抽到哪個(gè)數(shù)字。while循環(huán)會(huì)一直運(yùn)行,直到你猜對(duì)為止,就像玩游戲一樣,直到你通關(guān)為止。

4. 石頭剪刀布:經(jīng)典游戲Python版

石頭剪刀布,這個(gè)經(jīng)典的游戲也可以用Python來實(shí)現(xiàn)。

# 石頭剪刀布游戲
import random

choices = ['石頭''剪刀''布']
computer_choice = random.choice(choices) # 計(jì)算機(jī)隨機(jī)選擇
user_choice = input('請(qǐng)輸入你的選擇(石頭、剪刀、布):')

print('你的選擇:', user_choice)
print('計(jì)算機(jī)的選擇:', computer_choice)

# 判斷勝負(fù)
# ... 

這里使用了random.choice()函數(shù),讓計(jì)算機(jī)從列表中隨機(jī)選擇一個(gè)選項(xiàng),就像你讓朋友幫你隨機(jī)選擇一個(gè)餐廳一樣。

5. 待辦事項(xiàng)列表:讓Python幫你管理任務(wù)

待辦事項(xiàng)列表可以幫助你更好地管理你的任務(wù)。

# 待辦事項(xiàng)列表
todo_list = []
while True:
    action = input('請(qǐng)輸入操作(添加、查看、退出):')
    if action == '添加':
        item = input('請(qǐng)輸入待辦事項(xiàng):')
        todo_list.append(item)
    elif action == '查看':
        for item in todo_list:
            print(item)
    elif action == '退出':
        break
    else:
        print('無效的操作')

6. 基礎(chǔ)網(wǎng)頁抓取器:獲取網(wǎng)絡(luò)信息

想象一下,你想要收集某個(gè)網(wǎng)站上的所有商品價(jià)格,或者你想自動(dòng)下載一些圖片,這時(shí)候就需要用到網(wǎng)頁抓取器。

# 基礎(chǔ)網(wǎng)頁抓取器
import requests
from bs4 import BeautifulSoup

url = 'https://www.'  # 將此替換為你想要抓取的網(wǎng)站
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')

# 提取標(biāo)題
title = soup.title.string
print('網(wǎng)頁標(biāo)題:', title)

# 提取所有鏈接
links 
= soup.find_all('a')
for link in links:
    print(link.get('href'))


#  需要安裝requests和beautifulsoup4庫: pip install requests beautifulsoup4

這個(gè)腳本使用了requests庫來獲取網(wǎng)頁內(nèi)容,就像你在瀏覽器中輸入網(wǎng)址訪問網(wǎng)頁一樣。BeautifulSoup庫則像一個(gè)過濾器,幫助你從雜亂的網(wǎng)頁代碼中提取你需要的信息,就像你從一堆文件中找到你想要的那一份一樣。

7. 天氣應(yīng)用:實(shí)時(shí)掌握天氣信息

想知道今天的天氣怎么樣?Python可以幫你實(shí)現(xiàn)一個(gè)簡單的天氣應(yīng)用。

#  天氣應(yīng)用 (簡化示例,需要使用天氣API)
import requests

city = input('請(qǐng)輸入城市名稱:')
api_key = 'YOUR_API_KEY'  #  替換為你的API密鑰
url = f'http://api./v1/current.json?key={api_key}&q={city}' # 示例API,請(qǐng)?zhí)鎿Q為實(shí)際可用的天氣API

response = requests.get(url)
weather_data = response.json()

if 'current' in weather_data:
    temperature = weather_data['current']['temp_c']
    condition = weather_data['current']['condition']['text']
    print(f'{city} 當(dāng)前溫度:{temperature}℃,天氣狀況:{condition}')
else:
    print('獲取天氣信息失敗')

# 需要安裝requests庫: pip install requests
# 需要獲取天氣API密鑰并替換示例中的YOUR_API_KEY

這個(gè)簡化的例子使用了天氣API來獲取天氣數(shù)據(jù),就像你打電話給氣象臺(tái)詢問天氣一樣。你需要注冊一個(gè)天氣API并獲取API密鑰才能使用。

8. 瘋狂填詞游戲生成器:發(fā)揮你的創(chuàng)意

想玩一個(gè)填詞游戲?Python可以幫你生成游戲模板。

# 瘋狂填詞游戲生成器
import random

words = ['apple''banana''orange']  #  詞語列表
template = '我喜歡吃____,也喜歡吃____,但更喜歡吃____。'

blanks = template.count('____')
selected_words = random.sample(words, blanks)

for word in selected_words:
    template = template.replace('____', word, 1)

print(template)

這個(gè)腳本隨機(jī)選擇一些單詞填入模板中,就像你玩填字游戲一樣,你需要選擇合適的詞語填入空格。

9. 斐波那契數(shù)列:探索數(shù)學(xué)之美

斐波那契數(shù)列是一個(gè)經(jīng)典的數(shù)學(xué)數(shù)列,每一項(xiàng)都是前兩項(xiàng)的和。

# 斐波那契數(shù)列
def fibonacci(n):
    if n <
1:
        return n
    else:
        return fibonacci(n-1) + fibonacci(n-2)

n = int(input('請(qǐng)輸入要計(jì)算的斐波那契數(shù)列項(xiàng)數(shù):'))
result = fibonacci(n)
print(f'第{n}項(xiàng)斐波那契數(shù)是:{result}')

這個(gè)腳本使用了遞歸函數(shù)來計(jì)算斐波那契數(shù)列,就像你一步一步爬樓梯一樣,每一步都依賴于前兩步。

10. 密碼生成器:守護(hù)你的賬戶安全

一個(gè)強(qiáng)密碼是網(wǎng)絡(luò)安全的第一道防線。Python可以幫助你生成隨機(jī)的、難以破解的密碼。

# 密碼生成器
import random
import string

def generate_password(length=12):
    characters 
= string.ascii_letters + string.digits + string.punctuation
    password = ''.join(random.choice(characters) for i in range(length))
    return password

password 
= generate_password()
print('生成的密碼:', password)

# 可以根據(jù)需要調(diào)整length參數(shù)來控制密碼長度

這個(gè)腳本就像一個(gè)密碼鎖,它使用字母、數(shù)字和符號(hào)的組合生成隨機(jī)密碼,增加密碼的復(fù)雜度,就像用不同的鎖芯組合成一個(gè)更安全的鎖一樣.

11. 吊死鬼游戲:挑戰(zhàn)你的詞匯量

吊死鬼游戲是一個(gè)經(jīng)典的猜詞游戲。

# 吊死鬼游戲 (簡化版)
word = 'apple'
guesses = []
max_attempts = 6

while max_attempts > 0:
    masked_word = ''
    for letter in word:
        if letter in guesses:
            masked_word += letter
        else:
            masked_word += '_'
    print(masked_word)

    if masked_word == word:
        print('恭喜你,你贏了!')
        break

    guess = input('猜一個(gè)字母:')
    guesses.append(guess)

    if guess not in word:
        max_attempts -= 1
        print('猜錯(cuò)了,你還有', max_attempts, '次機(jī)會(huì)')

if max_attempts == 0:
    print('你輸了,單詞是:', word)

就像猜謎語一樣,你根據(jù)提示逐步猜測單詞,每次猜錯(cuò)都
會(huì)減少你的機(jī)會(huì)。

12. 質(zhì)數(shù)檢查器:探索數(shù)學(xué)奧秘

質(zhì)數(shù)是只能被1和自身整除的數(shù)。

# 質(zhì)數(shù)檢查器
def is_prime(num):
    if num <
1:
        return False
    for i in range(2int(num**0.5) + 1):
        if num % i 
== 0:
            return False
    return True

num = int(input('請(qǐng)輸入一個(gè)數(shù)字:'))
if is_prime(num):
    print(num, '是質(zhì)數(shù)')
else:
    print(num, '不是質(zhì)數(shù)')

就像篩子一樣,這個(gè)腳本會(huì)檢查一個(gè)數(shù)字是否能被其他數(shù)字整除,如果不是,則它是質(zhì)數(shù)。

13. 貨幣轉(zhuǎn)換器:方便你的旅行

旅行時(shí),你需要將貨幣轉(zhuǎn)換為當(dāng)?shù)刎泿拧?/span>

# 貨幣轉(zhuǎn)換器 (簡化示例,需要使用匯率API)

#  需要安裝requests庫: pip install requests
#  需要獲取匯率API密鑰并替換示例中的YOUR_API_KEY

import requests

def convert_currency(amount, from_currency, to_currency):
    api_key 
'YOUR_API_KEY' #  替換為你的API密鑰
    url = f'https://api./v4/latest/{from_currency}' # 示例API,請(qǐng)?zhí)鎿Q為實(shí)際可用的匯率API

    response = requests.get(url)
    data = response.json()

    if 'rates' in data and to_currency in data['rates']:
        rate = data['rates'][to_currency]
        converted_amount = amount * rate
        return converted_amount
    else:
        return None

amount = float(input('請(qǐng)輸入金額:'))
from_currency = input('請(qǐng)輸入原始貨幣(例如 USD):').upper()
to_currency = input('請(qǐng)輸入目標(biāo)貨幣(例如 CNY):').upper()

converted_amount = convert_currency(amount, from_currency, to_currency)

if converted_amount:
    print(f'{amount} {from_currency} 等于 {converted_amount} {to_currency}')
else:
    print('無法轉(zhuǎn)換貨幣')

這個(gè)簡化的例子使用匯率API來獲取最新的匯率信息,就像你在銀行兌換貨幣一樣。

14. BMI計(jì)算器:關(guān)注你的健康

BMI是衡量體重是否健康的一個(gè)指標(biāo)。

# BMI計(jì)算器
height = float(input('請(qǐng)輸入身高(米):'))
weight = float(input('請(qǐng)輸入體重(公斤):'))

bmi = weight / (height ** 2)
print('你的BMI是:', bmi)

就像用尺子測量身高一樣,這個(gè)腳本根據(jù)你的身高和體重計(jì)算你的BMI。

15. 定時(shí)發(fā)送郵件:

這個(gè)腳本可以定時(shí)自動(dòng)發(fā)送郵件。例如,你可以用它來定時(shí)發(fā)送生日祝福、提醒事項(xiàng),或者發(fā)送定期報(bào)告等。 它使用了smtplib庫來發(fā)送郵件,schedule庫來定時(shí)執(zhí)行任務(wù)。

import smtplib  # 用于發(fā)送郵件
from email.mime.text import MIMEText  # 構(gòu)建郵件內(nèi)容
import schedule  # 定時(shí)任務(wù)庫
import time  # 時(shí)間庫

def send_email():
    '''發(fā)送郵件的函數(shù)'''
    msg_from 
'你的郵箱地址'  #  替換為你的郵箱地址
    passwd = '你的郵箱密碼'  #  替換為你的郵箱密碼  (注意:為了安全,建議不要直接將密碼寫在代碼中,可以使用環(huán)境變量等方式)
    msg_to = '接收方郵箱地址'  #  替換為接收方郵箱地址

    subject = '定時(shí)郵件測試'  # 郵件主題
    content = '這是一封定時(shí)發(fā)送的郵件。'  # 郵件內(nèi)容
    msg = MIMEText(content) # 創(chuàng)建郵件對(duì)象
    msg['Subject'] = subject # 設(shè)置郵件主題
    msg['From'] = msg_from # 設(shè)置發(fā)送方
    msg['To'] = msg_to # 設(shè)置接收方

    try:
        s = smtplib.SMTP_SSL('smtp.qq.com'465)  # 連接到QQ郵箱的SMTP服務(wù)器,如果是其他郵箱服務(wù)商,需要修改服務(wù)器地址和端口號(hào)
        s.login(msg_from, passwd)  # 登錄郵箱
        s.sendmail(msg_from, msg_to, msg.as_string())  # 發(fā)送郵件
        print('郵件發(fā)送成功')
    except Exception as e:  # 處理可能出現(xiàn)的異常
        print('郵件發(fā)送失敗:', e)
    finally:
        s.quit()  # 關(guān)閉連接

# 使用schedule庫設(shè)置定時(shí)任務(wù),每天10點(diǎn)發(fā)送郵件
schedule.every().day.at('10:00').do(send_email)  # 你可以修改時(shí)間

while True:
    schedule.run_pending()  # 檢查是否有待執(zhí)行的任務(wù)
    time.sleep(1)  # 每秒檢查一次


#  需要安裝必要的庫: pip install smtplib schedule    

16. 自動(dòng)化文件整理:

這個(gè)腳本可以自動(dòng)整理指定文件夾中的文件,按照文件擴(kuò)展名進(jìn)行分類。例如,它可以將圖片、文檔、視頻等不同類型的文件分別移動(dòng)到不同的文件夾中,保持你的文件 organized。它使用了os庫來操作文件和文件夾,shutil庫來移動(dòng)文件.

import os  #  用于操作文件和文件夾
import shutil  #  用于移動(dòng)文件

def organize_files(source_folder, dest_folder):
    '''整理文件的函數(shù)'''
    for filename in os.listdir(source_folder):  # 遍歷源文件夾中的所有文件和文件夾
        source_path 
= os.path.join(source_folder, filename)  # 獲取文件的完整路徑
        if os.path.isfile(source_path):  #  判斷是否是文件,而不是文件夾
            ext = os.path.splitext(filename)[1].lower()  # 獲取文件擴(kuò)展名,并轉(zhuǎn)換為小寫
            dest_path = os.path.join(dest_folder, ext[1:])  #  在目標(biāo)文件夾中創(chuàng)建以擴(kuò)展名命名的子文件夾  (例如:.jpg文件會(huì)被移動(dòng)到 'jpg' 文件夾中)
            os.makedirs(dest_path, exist_ok=True)  #  創(chuàng)建目標(biāo)文件夾,如果已存在則不報(bào)錯(cuò)
            shutil.move(source_path, dest_path)  #  將文件移動(dòng)到目標(biāo)文件夾

#  替換為你想要整理的文件夾路徑
source_folder = '/path/to/your/source/folder'  # 源文件夾路徑
dest_folder = '/path/to/your/destination/folder' # 目標(biāo)文件夾路徑
organize_files(source_folder, dest_folder)

17. 生成二維碼:

這個(gè)腳本可以生成二維碼圖片。你可以將文本、網(wǎng)址、聯(lián)系方式等信息編碼到二維碼中,方便用戶掃描獲取信息。它使用qrcode庫來生成二維碼。

import qrcode #  二維碼庫

data = 'https://www.'  #  你想要編碼到二維碼中的數(shù)據(jù),可以是網(wǎng)址、文本等
img = qrcode.make(data)  #  生成二維碼對(duì)象
img.save('qrcode.png')  #  保存二維碼圖片為png格式


# 需要安裝qrcode庫: pip install qrcode

18. 圖像處理 (調(diào)整大小):

這個(gè)腳本可以調(diào)整圖片的大小。你可以指定新的寬度和高度,將圖片縮放到你需要的尺寸。它使用PIL庫 (Pillow) 來處理圖像。

import qrcode #  二維碼庫

data = 'https://www.'  #  你想要編碼到二維碼中的數(shù)據(jù),可以是網(wǎng)址、文本等
img = qrcode.make(data)  #  生成二維碼對(duì)象
img.save('qrcode.png')  #  保存二維碼圖片為png格式


# 需要安裝qrcode庫: pip install qrcode

19.  批量重命名文件:

這個(gè)腳本可以批量重命名指定文件夾中的文件,例如添加序號(hào)、修改擴(kuò)展名等。這在處理大量文件時(shí)非常有用,例如批量重命名照片、文檔等。

import os

def batch_rename(folder_path, new_name_prefix='file_'):
    '''批量重命名文件的函數(shù)'''
    i 
1
    for filename in os.listdir(folder_path):
        old_path = os.path.join(folder_path, filename)
        if os.path.isfile(old_path):
            ext = os.path.splitext(filename)[1]  # 獲取文件擴(kuò)展名
            new_name = f'{new_name_prefix}{i}{ext}'
            new_path = os.path.join(folder_path, new_name)
            os.rename(old_path, new_path)
            i += 1
            print(f'已將 {filename} 重命名為 {new_name}')

folder_path = '/path/to/your/folder'  #  將此替換為你的文件夾路徑
batch_rename(folder_path)

20.  簡單的網(wǎng)頁服務(wù)器:

這個(gè)腳本可以創(chuàng)建一個(gè)簡單的網(wǎng)頁服務(wù)器,讓你可以通過瀏覽器訪問本地電腦上的文件。這在開發(fā)和測試網(wǎng)頁時(shí)非常有用。

import http.server
import socketserver

PORT = 8000 # 端口號(hào)

Handler = http.server.SimpleHTTPRequestHandler

with socketserver.TCPServer(('', PORT), Handler) as httpd:
    print('serving at port', PORT)
    httpd.serve_forever()


#  運(yùn)行后,在瀏覽器中訪問 http://localhost:8000 即可

21. 下載YouTube視頻:

這個(gè)腳本可以下載YouTube視頻,方便你離線觀看。

from pytube import YouTube

def download_youtube_video(url, resolution='highest'):
    '''下載YouTube視頻的函數(shù)'''
    try:
        yt 
= YouTube(url)
        stream = yt.streams.filter(progressive=True, file_extension='mp4').order_by('resolution').desc().first()
        if not stream:
            print('找不到合適的視頻流')
            return

        print(f'正在下載: {yt.title}')
        stream.download()  # 下載到當(dāng)前目錄
        print('下載完成!')

    except Exception as e:
        print(f'下載失敗: {e}')



video_url = 'https://www./watch?v=你的視頻ID' #  替換為你要下載的視頻鏈接
download_youtube_video(video_url)

#  需要安裝pytube庫:  pip install pytube

希望今天的分享能讓你感受到Python的趣味性和實(shí)用性。繼續(xù)探索,你將發(fā)現(xiàn)更多Python的精彩應(yīng)用!

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    日本少妇aa特黄大片| 亚洲三级视频在线观看免费| 欧美美女视频在线免费看| 精品日韩视频在线观看| 日韩精品日韩激情日韩综合| 亚洲熟女乱色一区二区三区| 污污黄黄的成年亚洲毛片| 日韩在线中文字幕不卡| 激情丁香激情五月婷婷| 久久女同精品一区二区| 久久精品国产亚洲熟女| 日韩高清毛片免费观看| 日韩欧美国产精品自拍| 亚洲一区二区三区av高清| 色哟哟哟在线观看视频| 我想看亚洲一级黄色录像| 国产日韩在线一二三区| 日本一区不卡在线观看| 中文字幕亚洲精品人妻| 日本道播放一区二区三区| 深夜少妇一区二区三区| 色好吊视频这里只有精| 欧美日韩在线视频一区| 亚洲天堂国产精品久久精品| 熟女免费视频一区二区| 国产日产欧美精品视频| 欧美不卡高清一区二区三区| 午夜小视频成人免费看| 日本人妻精品中文字幕不卡乱码| 99久久精品免费精品国产| 亚洲国产婷婷六月丁香| 国产精品二区三区免费播放心| 丰满少妇被粗大猛烈进出视频| 国产免费黄片一区二区| 日韩精品一区二区三区四区| 婷婷开心五月亚洲综合| 69精品一区二区蜜桃视频 | 中文字幕高清免费日韩视频| 成人日韩在线播放视频| 美女露小粉嫩91精品久久久 | 中文人妻精品一区二区三区四区 |