国产精品与欧美交牲久久久久_国产精品毛片在线完整版_成人欧美在线视频_一个人看的www日本高清视频_日韩AV东北熟女_一区二区三区黄色毛片免费高清视频_亚洲欧美另类人妻_四虎精品免费视频_久久国产精品99精品国产_免费看黄片在线看

Python 命令行參數(shù)詳解

不說別的,什么是 Python 命令行參數(shù)?我相信大家都不會陌生,Python 是一種廣泛使用的編程語言,它可以用于數(shù)據(jù)分析、機器學(xué)習(xí)、人工智能、Web 開發(fā)、游戲開發(fā)等領(lǐng)域。而命令行參數(shù)是指當我們在執(zhí)行 Python 腳本時,在命令行中輸入的參數(shù)。Python 中可以使用 argparse 模塊來解析命令行參數(shù),以便在腳本中使用這些參數(shù),并根據(jù)參數(shù)的不同完成不同的操作。接下來,我將深入探究 Python 命令行參數(shù)的使用方法和細節(jié)。

Python 命令行參數(shù)的語法

在 Python 中使用命令行參數(shù)需要使用 sys 模塊,其實在 sys 模塊中已經(jīng)有一個 argv 變量,它可以用來獲取命令行輸入的參數(shù)。argv 變量是一個列表,其中包含了整個命令行輸入的所有參數(shù)。首先,我們來看一下 argv 變量的使用方法:

```

import sys

print(sys.argv)

```

上述代碼會輸出一個列表,其中包含了整個命令行輸入的所有參數(shù)。我們可以在命令行中輸入下面的代碼來調(diào)用 Python 腳本并傳遞參數(shù):

```

python yourscript.py arg1 arg2 arg3

```

其中 yourscript.py 是你的 Python 腳本文件名稱,arg1, arg2, arg3 是你想要傳遞的參數(shù)。在這種方式下,sys.argv 列表的第一個參數(shù)是你的 Python 腳本名稱,其余的參數(shù)就是你在命令行中輸入的參數(shù)。

我們也可以使用 argparse 模塊來解析命令行參數(shù)。argparse 模塊是 Python 自帶的模塊,可以幫助我們解析命令行參數(shù)。下面是 argparse 模塊的語法:

```

import argparse

parser = argparse.ArgumentParser(description='description of my script')

parser.add_argument('positional_arg', type=str, help='description of positional argument')

parser.add_argument('-o', '--optional-arg', type=int, help='description of optional argument')

parser.add_argument('-f', '--flag', action='store_true', help='description of flag')

args = parser.parse_args()

```

上述代碼中,argparse.ArgumentParser 是一個創(chuàng)建命令行參數(shù)解析器的類,description 參數(shù)是一段描述信息,用于解釋該腳本的用途和參數(shù)的作用。add_argument 函數(shù)可以讓我們指定這個參數(shù)的名稱,類型,幫助信息等等。

這個例子中,“positional_arg”是位置參數(shù),類型為字符串,不能省略。-o 選項和 —optional-arg 選項都是可選的參數(shù)并且是整數(shù)類型,可以通過 --optional-arg 或 -o 傳遞給腳本。-f 選項是一個標準的開關(guān),表示“是”或“否”,如果指定了該標志,則為 True,否則為 False。

當我們將上述代碼保存為 Python 腳本并在命令行輸入:

```

python yourscript.py positional_value -o optional_value -f

```

這個例子中,positional_value 是位置參數(shù)的值,-o 選項的可選值為 optional_value,-f 選項開啟。

Python 命令行參數(shù)的實際應(yīng)用

接下來,我們來看一些使用 Python 命令行參數(shù)的實際應(yīng)用。

1. 文件批量重命名

批量重命名文件是一個很常見的操作。假設(shè)你有一些文件需要重命名,而且名稱大小寫不一致。使用 Python 命令行參數(shù)可以輕松完成這項任務(wù)。這是一個示例代碼,可以重命名文件并將它們轉(zhuǎn)換為小寫:

```

import os

import argparse

parser = argparse.ArgumentParser(description='Rename files to lowercase')

parser.add_argument('-p', '--path', type=str, help='Path to rename files')

args = parser.parse_args()

path = args.path

if os.path.isdir(path):

for filename in os.listdir(path):

os.rename(os.path.join(path, filename), os.path.join(path, filename.lower()))

print(f'Renamed {filename} to {filename.lower()}')

else:

print(f'{path} is not a valid directory')

```

這個腳本中,我們通過 argparse 模塊引入了一個 path 參數(shù),該參數(shù)指定了要重命名的文件所在的目錄。我們使用 os 模塊列出了該目錄中的所有文件,并重命名了這些文件。改變文件名的方式是使用了 filename.lower() 函數(shù),它將文件名轉(zhuǎn)換為小寫。經(jīng)過這個腳本的處理,文件名將完全轉(zhuǎn)換為小寫。

2. 數(shù)據(jù)清洗和處理

當我們在進行數(shù)據(jù)分析時,常常需要將數(shù)據(jù)先進行清洗和處理。雖然有很多成熟的數(shù)據(jù)處理工具可以使用,但是如果需要改進算法或數(shù)據(jù)清洗流程,我們同樣可以使用 Python 命令行參數(shù)來指定腳本所選擇的數(shù)據(jù)集,數(shù)據(jù)集的大小等參數(shù)。

下面是一個示例代碼,它可以讀取 CSV 數(shù)據(jù),過濾掉數(shù)據(jù)大小較小的行,并計算其中每列的平均值:

```

import argparse

import csv

parser = argparse.ArgumentParser(description='Process CSV data')

parser.add_argument('-f', '--file', type=str, help='CSV file to process')

parser.add_argument('-s', '--size', type=int, help='Number of rows to process')

args = parser.parse_args()

file = args.file

size = args.size

rows = []

with open(file, newline='') as csvfile:

reader = csv.reader(csvfile)

for i, row in enumerate(reader):

if i == 0:

continue

if size is not None and i > size:

break

if len(row) > 0:

rows.append(row)

columns = [[float(row[i]) for row in rows] for i in range(len(rows[0]))]

means = [sum(column) / len(column) for column in columns]

print('Mean:', means)

```

這個腳本中,-f 和 --file 這兩個參數(shù)用于指定CSV文件,-s 和 --size 用于指定要處理的行數(shù)。首先,我們使用 csv 模塊將 CSV 文件讀入列表中。然后,我們使用列表推導(dǎo)式過濾掉數(shù)據(jù)大小較小的行。接下來,我們使用另一個列表推導(dǎo)式將每列數(shù)據(jù)提取出來并計算平均值。這個腳本非常簡單,但是它實現(xiàn)了常見的數(shù)據(jù)分析流程,可以同樣地應(yīng)用于其他類型的數(shù)據(jù)集。

3. 網(wǎng)絡(luò)爬蟲

網(wǎng)絡(luò)爬蟲是 Python 最受歡迎的應(yīng)用之一,我們可以通過命令行參數(shù)來指定要抓取的數(shù)據(jù),如要抓取頁面的數(shù)量和要抓取的頁面類型等等,這些參數(shù)都可以通過命令行輸入的方式來傳遞給 Python 爬蟲腳本。

下面是一個示例代碼,它可以抓取豆瓣電影排行榜,并輸出排行榜中“評分較高”的電影的詳情:

```

import argparse

import requests

from bs4 import BeautifulSoup

parser = argparse.ArgumentParser(description='Web scraper for Douban Top250')

parser.add_argument('-p', '--pages', type=int, help='Number of pages to scrape')

parser.add_argument('-m', '--minimum_rating', type=float, default=8.0, help='Minimum rating to display')

args = parser.parse_args()

url_template = 'https://movie.douban.com/top250?start={}&filter='

pages = args.pages

minimum_rating = args.minimum_rating

for i in range(pages):

url = url_template.format(i * 25)

r = requests.get(url)

soup = BeautifulSoup(r.text, 'html.parser')

movies = soup.find_all(class_='item')

for movie in movies:

title = movie.find('span', class_='title').get_text()

rating = movie.find('span', class_='rating_num').get_text()

if float(rating) >= minimum_rating:

print(f'Title: {title} Rating: {rating}')

```

在這個腳本中,我們使用了 argparse 模塊的 pages 和 minimum_rating 參數(shù)。pages 參數(shù)用于指定要抓取的頁面數(shù)量,minimum_rating 用于指定要輸出的電影最低評分標準。我們使用了 requests 庫來發(fā)起 HTTP 請求,使用了 BeautifulSoup 庫來解析 HTML 頁面。使用 CSS 選擇器找到頁面中的每個電影條目,然后提取電影標題和評分并輸出它們的詳細信息。這個腳本可以通過命令行參數(shù)來控制其行為,非常靈活和實用,可以用于其他類型的網(wǎng)頁面數(shù)據(jù)抓取。

結(jié)論

Python 命令行參數(shù)是 Python 語言中的一個非常有用的工具,它可以讓我們輕易地從命令行輸入和使用參數(shù),非常適合用于開發(fā)小工具、腳本和小型應(yīng)用等場景。本文中,我們深入學(xué)習(xí)了 Python 命令行參數(shù)的使用方法和實際應(yīng)用,希望本文對大家有所幫助。 www.yinyiprinting.cn 寧波海美seo網(wǎng)絡(luò)優(yōu)化公司 是網(wǎng)頁設(shè)計制作,網(wǎng)站優(yōu)化,企業(yè)關(guān)鍵詞排名,網(wǎng)絡(luò)營銷知識和開發(fā)愛好者的一站式目的地,提供豐富的信息、資源和工具來幫助用戶創(chuàng)建令人驚嘆的實用網(wǎng)站。 該平臺致力于提供實用、相關(guān)和最新的內(nèi)容,這使其成為初學(xué)者和經(jīng)驗豐富的專業(yè)人士的寶貴資源。

點贊(53) 打賞

聲明本文內(nèi)容來自網(wǎng)絡(luò),若涉及侵權(quán),請聯(lián)系我們刪除! 投稿需知:請以word形式發(fā)送至郵箱18067275213@163.com

評論列表 共有 4 條評論

gay 1年前 回復(fù)TA

通過這個鏈接過去我收聽了好多個,囧

南岸育清幼兒園 1年前 回復(fù)TA

我的網(wǎng)站什么時候才能到6呀。呵呵。

小蕾 1年前 回復(fù)TA

蜜蜂

百度優(yōu)化教程 1年前 回復(fù)TA

很想知道以前是什么域名

立即
投稿
發(fā)表
評論
返回
頂部