Python文件操作有哪些方式?

Python015

Python文件操作有哪些方式?,第1张

1. 使用内置open函数:open()

2. 使用os模块的函数:os.open()、os.remove()、os.rename()、os.listdir()等

3. 使用shutil模块的函数:shutil.copyfile()、shutil.copy()、shutil.copytree()等

4. 使用pathlib模块的函数:pathlib.Path.mkdir()、pathlib.Path.rmdir()、pathlib.Path.rename()、pathlib.Path.glob()等

5. 使用glob模块的函数:glob.glob()

6. 使用tempfile模块的函数:tempfile.mkstemp()、tempfile.mkdtemp()等

from collections import Counter

a = [1,2,3,1,2,3,1,2,2,2,4,5,7]

print(max(set(a), key=a.count))

cnt = Counter(a)

print(cnt.most_common(4)) #计算每个元素出现频率 4代表前面四个元素

str1 = 'li chao'

str2 = 'chao li'

print(Counter(str1) == Counter(str2))

for char in reversed(str1):

print(char)

b = 12345678

print(int(str(b)[::-1]))

original = [['a', 'b'],['c', 'd'], ['e', 'f']]

transposed = zip(*original)

print(list(transposed))

def product(a, b):

return a * b

def add(a, b):

return a + b

b = False

print((product if b else add)(5,7))

m = {'apple': 10, 'orange': 20, 'banana': 5, 'rotten tomato': 1}

print(sorted(m.items(), key=lambda x: x[1]))

from operator import itemgetter

print(sorted(m.items(), key=itemgetter(0)))

print(sorted(m, key=m.get))

也就是列表类型转换为字符串

list = ['foo', 'bar', 'xyz']

print(','.join(list))

numbers = [2, 4, 5, 10]

print(','.join(map(str,numbers)))

data = [2, 'hello', 3, 3.4]

print(','.join(map(str, data)))

d1 = {'a': 1}

d2 = {'b': 2}

print({**d1, **d2})

print(dict(d1.items() | d2.items()))

d1.update(d2)

print(d1)

list1 = [40, 10, 20,30]

def minIndex(list1):

return min(range(len(list1)), key=list1. getitem )

def maxIndex(list1):

return max(range(len(list1)), key=list1. getitem )

print(minIndex(list1))

print(maxIndex(list1))

list2 = [2,2,3,3,1]

newlist2 = list(set(list2))

print(newlist2)

from collections import OrderedDict

list3 = ['foo', 'bar', 'bar', 'foo']

print(list(OrderedDict.fromkeys(list3).keys()))