當前位置:首頁 » 編程語言 » python獲取腳本名

python獲取腳本名

發布時間: 2023-02-12 11:27:06

A. python讀取腳本所在目錄文件名,放到aa.txt文件中,然後讀取aa.txt文件的每

多了個換行符 你第二次打開文件之前,先把換行符去掉。
import os
path = os.getcwd()
for filename in os.listdir(path):
f = open('aa.txt','a')
f.write(filename)
f.write("\n")
f.close()
f = open('aa.txt')
line = f.readline()
while line:
inFile = line.strip('\n')
if inFile:
filehandle = open(inFile)
line = f.readline()
f.close()
filehandle.close()

B. python腳本文件的擴展名是什麼

python程序的擴展名有.py、.pyc、.pyo和.pyd。.py是源文件,.pyc是源文件編譯後的文件,.pyo是源文件優化編譯後的文件,.pyd是其他語言寫的python庫。

C. python3.4中fib(int(sys.argv[1]))是什麼意思如圖

就是調用fib函數

#可以分開表示成:
n=int(sys.argv[1])
#[pythonfibo.py1]這么執行
#sys.argv裡面存放的是命令行參數,argv[0]是腳本名(fibo.py),argv[1]里是第一個參數(1),因為獲取的是字元串,所以int轉為整形
fib(n)

如果解決了您的問題請採納!
如果未解決請繼續追問

D. Python3腳本傳參實戰(2個方法3個傳參列表的案例)

在一些測試平台對接時或者用例執行時,或多或少會用到Python腳本傳參的問題。

test.py腳本

#!/usr/bin/python3

import sys

print ('參數個數為:', len(sys.argv), '個參數。')

print ('參數列表:', str(sys.argv))

print ('腳本名:', str(sys.argv[0]))

print ('第一個參數:', sys.argv[1])

執行python3 test.py arg1 arg2 arg3

參數個數為: 4 個參數。

參數列表: ['test.py', 'arg1', 'arg2', 'arg3']

腳本名: test.py

第一個參數: arg1

test.py腳本

#!/usr/bin/python3

import argparse

# 生成了一個命令行參數的對象

parser = argparse.ArgumentParser(description='Test for argparse')

parser.add_argument('--name', '-n', help='name屬性,非必要參數')

parser.add_argument('--year', '-y', help='year 屬性,非必要參數,但有默認值', default=2017)

parser.add_argument('--body', '-b', help='body屬性,必要參數', required=True)

args = parser.parse_args()

print (args.year,  args.name, args.body)

查看幫助python3 test.py --help

usage: test.py [-h] [--name NAME] [--year YEAR] --body BODY

Test for argparse

optional arguments:

  -h, --help  show this help message and exit

  --name或-n NAME  name屬性,非必要參數

  --year或-y YEAR  year屬性,非必要參數,但有默認值

  --body或-b BODY  body 屬性,必要參數

執行python3 test.py --year 2021 -n robot  --body "are you ok?"

2021 robot are you ok?

以方法2中的test.py腳本為例

python3 test.py --year 2021 --body [\"test\", \"robot\",\"boy\" ]

2021 ["test", "robot", "boy" ]

以方法1中的test.py腳本為例

python3 test.py [\"test\", \"robot\",\"boy\" ]

參數個數為: 2個參數。

參數列表: ['test.py', '[\"test\", \"robot\", \"boy\" ]']

腳本名: test.py

第一個參數: ["test", "robot", "boy" ]

其實此時傳入的第一個參數是一個字元,需要轉換為列表。

import json

json.loads(sys.argv[1])

test_arg.py腳本

#!/usr/bin/python3

import argparse

import os

# 生成了一個命令行參數的對象

parser = argparse.ArgumentParser(description='Test for argparse')

parser.add_argument('--body', '-b', help='body屬性,必要參數', required=True)

args = parser.parse_args()

print (args.body)

command=python3 + '  ' + test_sys.py+ '  '  + args.body

print (command)

str=('command')

result=os.system(str)

test_sys.py腳本

#!/usr/bin/python3

import sys

import json

print ('第一個參數:', sys.argv[1])

print ('列表:', json.loads(sys.argv[1]))

執行python3 test_arg.py --body  [\"test\", \"robot\",\"boy\" ]

python3  test_sys.py  ["test", "robot", "boy" ]

test_sys.py執行報錯,轉json失敗。

還記得我們案例2中,腳本的傳入指定參數和實際傳入參數嘛?

test_arg.py腳本我們稍微優化下,在傳參前先字元替換下。

["test", "robot", "boy" ]轉換為[\"test\", \"robot\",\"boy\" ]即可。

command.replace(' " ' , r ' \" ') 添加到command=之後,再次運行看看呢?

E. 如何用python得到當前運行的腳本的PID

保存為.py文件後 運行腳本在後面添加進程名稱即可 比如:python proinfo.py qq 即可獲取QQ的進程信息,注意不區分大小寫

復制代碼代碼如下:
#-*- encoding:UTF-8 -*-
import os
import sys
import string
import psutil
import re

def get_pid(name):
process_list = psutil.get_process_list()
regex = "pid=(\d+),\sname=\'" + name + "\'"
print regex
pid = 0
for line in process_list:
process_info = str(line)
ini_regex = re.compile(regex)
result = ini_regex.search(process_info)
if result != None:
pid = string.atoi(result.group(1))
print result.group()
break
def main(argv):<br>name = argv[1]<br>get_pid(name)

if __name__ == "__main__":
main(sys.argv)

代碼說明:
1.import psutil 需要安裝,用於獲取linux下進程列表

復制代碼代碼如下:
process_list = psutil.get_process_list() #獲取進程列表

2.import re: python處理正則的模塊

復制代碼代碼如下:
regex = "pid=(\d+),\sname=\'" + name + "\'" #組成string類型的正則表達式
ini_regex = re.compile(regex)#初始化正則表達式
result = ini_regex.search(process_info)#正則表達式匹配
result.group(0):匹配到的整個字元串的內容
result.group(1):匹配第一個()中的內容

F. python的腳本文件的擴展名是pyd

擴展名說明

1、通常寫Python腳本都是以.py為擴展名,.pyc二進制文件可以反編譯成.py文件。

2、反編譯軟體叫EasyPythonDecompiler,可以反編譯一個文件,也可以是一個文件夾

G. python腳本怎麼獲取遠程linux伺服器的進程名

進程信息
/proc目錄包含了所有正運行的進程目錄。這些目錄的名字和進程的標識符是一樣的。所以,如果你遍歷/proc目錄下那些使用數字作為它們的名字的目錄,你就會獲得所有現在正在運行的進程列表。在下面的代碼中process_list()函數返回所有現在正在運行的進程的標識符列表。當你執行這個程序後,這個列表的長度就是在系統上運行的總進程數。

復制代碼 代碼如下:

#!/usr/bin/env python
"""
List of all process IDs currently active
"""
from __future__ import print_function
import os
def process_list():
pids = []
for subdir in os.listdir('/proc'):
if subdir.isdigit():
pids.append(subdir)
return pids

if __name__=='__main__':
pids = process_list()
print('Total number of running processes:: {0}'.format(len(pids)))

上面的程序當執行後會顯示和下面類似的輸出:

復制代碼 代碼如下:
Total number of running processes:: 229

每個進程目錄包含了一些其他文件和目錄,如進程命令的調用,它正使用的共享庫以及其它的。
建議看看《Linux就該這么學》這本書

H. python3怎麼讀取命令行參數

數1: sys.argv[1]
參數2: sys.argv[2]

test.py
1 import sys
2 print "腳本名:", sys.argv[0]
3 for i in range(1, len(sys.argv)):
4 print "參數", i, sys.argv[i]
>>>python test.py hello world
腳本名:test.py
參數 1 hello
參數 2 world
python中使用命令行選項:
例如我們需要一個convert.py腳本。它的作用是處理一個文件,並將處理後的結果輸出到另一個文件中。
要求該腳本滿足以下條件:
1.通過-i -o選項來區別參數是輸入文件還是輸出文件.
>>> python convert.py -i inputfile -o outputfile
2.當不知道convert.py需要哪些參數時,用-h列印出幫助信息
>>> python convert.py -h
getopt函數原形:
getopt.getopt(args, options[, long_options])

I. 如何用python得到當前運行的腳本的PID

shell腳本獲取自己的pid是 $$ 變數 python腳本獲取自己運行的pid是 os.getpid()函數 可以參考下面的示例代碼 shell腳本 #! /bin/shecho $$python腳本 import osprint os.getpid()

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:585
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:881
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:574
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:761
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:676
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1004
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:249
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:108
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:798
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:705