import os
from os.path import join
for root,
dir, files in os.walk(
'/var/log'):
#os.walk
#print(root) # 檢視路徑
print
(dir
)# 檢視名稱
print
(files)
for name in files:
print
(join(root, name)
)# 拼接
要求:
1,生成乙個大檔案ips.txt,要求1200行,每行隨機為172.25.254.0/24段的ip;
2,讀取ips.txt統計這個檔案中ip出現排名前10的ip
import random
import ipaddress
"""def decorator(func):
func(*args, **kwargs) # 接收引數net4
"""res =
res1 =
res2 =
#@decorator
defip_hosts
(filename, net4)
:for i in net4.hosts():
str(i)
)with
open
(filename,
'w+'
)as f1:
for x in
range
(1200):
if x >
1200
: exit(
)else
: ip_hosts(net4=ipaddress.ip_network(
'172.25.254.0/24'))
ip = random.choice(res)
f1.write(
(ip)
+'\n'
) f1.seek(0)
print
(f1.read())
defsorted_by_ip
(filename, count=10)
:with
open
(filename)
as f2:
for ip in f2:
ip = ip.strip(
)if ip in res2:
res2[ip]+=1
else
: res2[ip]=1
res1 =
sorted
(res2.items(
), key=
lambda x: x[1]
, reverse=
true)[
:count]
return res1
print
(sorted_by_ip(
'ips.txt'
))
要求:
生成100個mac位址並寫入檔案中,mac位址前6位(16進製制)為01-af-3b
01-af-3b-xx
01-af-3b-xx-xx
01-af-3b-xx-xx-xx
01-af-3b-xx-xx-xx-xx
def
creat_mac()
: mac=
'01-af-3b'
hex_num = string.hexdigits
for i in
range(3
):n = random.sample(hex_num,2)
sn =
'_'+
''.join(n)
.upper(
) mac += sn
return mac
defmain()
:with
open
('mac.txt'
,'w'
)as f:
for i in
range
(100):
mac = creat_mac(
) f.write(mac +
'\n'
)else
: exit(
)if __name__ ==
'__main__'
: main(
)
要求:
1,在當前目錄新建目錄img,裡面包含100個檔案,100個檔名個不相同(x4g5.png)
2,將當前目錄所有以.png結尾的字尾名改為.jpg
def
get_code
(len=4
):#生成隨機碼
code_str = string.ascii_letters + string.digits
code =
''for i in
range
(len):
new_s = random.choice(code_str)
code += new_s
# print(code)
return
''.join(random.sample(code_str,
len)
)def
creat_dir()
:#建立檔案與目錄
li =
[get_code(
)for i in
range(5
)]os.mkdir(
'img1'
)for i in li:
os.mknod(
'img1/'
+ i +
'.png'
)else
: exit(
)def
moddify_suffix
(dirname, old_suffix, new_suffix)
:#當前目錄所有以.png結尾的字尾名改為.jpg
pngfile =
filter
(lambda filename: filename.endswith(old_suffix)
, os.listdir(dirname)
)#過濾出png結尾的檔案
basefiles =
[os.path.splitext(filename)[0
]for filename in pngfile]
#分離出不帶結尾的檔案
for filename in basefiles:
oldname = os.path.join(dirname, filename + old_suffix)
newname = os.path.join(dirname, filename + new_suffix)
os.rename(oldname, newname)
#重新命名
)#呼叫函式
python3 os模組 python3 os模組
os模組就是對作業系統進行操作,這個模組提供了一種使用作業系統相關功能的可移植方式。1.系統資訊 posix.uname result sysname linux nodename liangwei test6 release 2.6.32 642.el6.x86 64 version 1 smp ...
python3 os模組筆記
官方模組解釋文件 os 模組可以呼叫系統命令,獲得路徑,獲取作業系統型別等等。在 import os 的時候,建議使用 import os 風格而非 from os import 這樣可以保證隨作業系統不同而有所變化的 os.open 不會覆蓋內建函式 open 兩個函式方法可以檢視 os 的方法和...
python3 os模組學習
os.access 功能 檢查許可權模式 第乙個引數是path,就是檔案或者目錄的路徑,第二個是mode,就是檔案或者目錄的模式,有四種模式 是否存在 os.f ok,是否可讀 os.r ok,是否 可寫 os.w ok,是否可執行 os.x ok os.chdir 第乙個引數為路徑,改變當前目錄 ...