Python程式設計細節(二)

2021-08-07 14:37:56 字數 3128 閱讀 8806

1.使用正則來拆分分隔符不一致的字串

import re

re.split(r'[;,\s]',str)

2.在篩選檔案拓展名、url協議的時候,使用str.startswith()或者str.endswith()來檢查字串的開頭或者結尾

any(name.endswith('.py') for name in filesnames
3.從字串中去掉不需要的字元

預設情況下是去除空格符號

strip

()lstrip

()rstrip

()

4.以固定的列數重新格式化文字

import textwrap

textwrap.fill(s, number)

1.如果期望得到更高精度的小數運算,可使用decimal模組,但是效能會因降低

from

decimal import decimal

2.format()函式可以使數字進行格式化輸出

# 以2位小數點進行輸出

format(x, '0.2f')

# 以二進位制進行輸出

format(x, 'b')

3.不同進製數字間的轉換

二進位制:bin()

八進位制:oct()

十六進製制:hex()

4.fractions模組來處理分數的計算

from fractions import fraction

x = fraction(1,2)

5.隨機選擇

import random

# 從隨機序列中隨機挑選元素

values = [1, 2, 3, 4, 5]

random.choice(values)

# 從隨機序列中隨機挑選n個元素

random.sample(values, n)

# 打亂原序列中元素的順序

random.shuffle(values)

# 產生隨機整數

random.randict(0,10)

# 產生0到1之間均勻分布的浮點數

random.random()

1.使用dateutil模組可以補充datetime模組中月份的缺失

from datetime import datetime

from dateutil.relativedelta import relativedelta

a = datetime(2017, 1, 1)

a_plus = a = relativedelta(months=+1)

2.字串和日期的轉換

字串轉日期

from datetime import datetime

time = datetime.strptime(str, 'str_format')

1.reversed()可以實現反向迭代

2.permutations()可以迭代所有可能的組合,用conbinations()不考慮順序進行迭代

from itertools import permutations

from itertools import combinations

3.enmuerate()對列表以索引-值的形式進行迭代

4.zip()可以實現同時迭代多個序列

整個迭代的長度和元素最少的那個列表一樣

**5.利用chain()在不同的容器中進行迭代

from itertools import chain

a = [1,2,3]

b = [4,5,6]

for x in chain(a,b)

...

6.合併多個有序序列並迭代

import headq

for c in headq.merge(a,b)

...

1.將輸出檔案重新定向到乙個檔案中

with

open('somefile.txt','rt) as f:

print('hello world',file=f)

2.以不同的分隔符進行列印

print(1,2,3, sep=',')
3.用os.path來處理檔案路徑

import os

# 獲取檔案路徑最後一部分內容

os.path

.basename(path)

# 獲取檔案路徑內容

os.path

.dirname(path)

# 檔案路徑連線

os.path

.join(path1, path2)

# 檢測檔案是否存在

os.path

.exists(path)

C程式語言之細節 二

昨天的竟然又沒提交上,電腦上還沒備份,鬱悶!1,c語言中,所有函式引數都是通過值傳遞的。傳遞給被呼叫函式的函式值存放在臨時變數中。c語言中,被呼叫函式並不能修改主調函式的引數值,而只能修改私有的臨時副本值。若要呼叫函式修改主調函式引數值,可以採用指標。2,c語言中字串常量以字元陣列的形式儲存。str...

Python細節 二 小資料池

python是由 塊構成的 塊,乙個模組.乙個函式,乙個類,乙個檔案,eval exec 執行的時候也是乙個 塊 1.記憶體位址 id 通過id 我們可以檢視到乙個變數表示的值在記憶體中的位址 a alex print id a 4541631158 和is 比較的是值 內容 true is比較的是...

程式設計細節小點

1.碰到字串中比較排序的時候,對數值進行比較的時候,不一定用正規表示式進行匹配是否是數值,然後再比較大小,可以直接用ascii碼進行比較大小。if c 0 c 9 2.將ip掩碼轉換成 long型 格式 string split 255.255.255.0 split listipnums new ...