Python知識點總結篇(四)

2021-09-24 07:51:52 字數 1926 閱讀 6554

def

calc

(n):

print(n)

if n // 2 > 0:

return calc(n // 2)

calc(10)

複製**

def

add(x, y, func):

return func(x) * func(y)

result = add(4, 8, abs)

print(result)

複製**

# --*--coding:utf-8--*--

#! /usr/bin/python3

user, passwd = 'k', '12345'

defauth

(func):

def(*args, **kwargs):

username = input('username:').strip()

password = input('passwd:').strip()

if user == username and passwd == password:

print('passed')

func(*args, **kwargs)

else:

exit('invalid username or password.')

defindex

(): print('welcomt to index page')

@auth

defhome

(): print('welcome to home page')

@auth

defbbs

(): print('welcomt to bbs page')

index()

home()

bbs()

複製**

生成物件都是迭代器物件,listdictstr雖然是可迭代物件,但卻不是迭代器,使用iter()函式可將他們從迭代物件轉換為迭代器;

# json序列化與反序列化

import json

info =

# 序列化

f = open('test.txt', 'w')

f.write(json.dumps(info))

# 反序列化

f = open('test.txt', 'r')

data = json.loads(f.read())

print(data['***'])

f.close()

複製**

# pickle序列化與反序列化

import pickle

info =

# 序列化

f = open('test.txt', 'wb')

f.write(pickle.dumps(info)) #與下一句作用相同

pickle.dump(info, f)

# 反序列化

f = open('test.txt', 'rb')

data = pickle.loads(f.read())

print(data['***'])

f.close()

複製**

Python知識點總結篇(二)

cat fat black loud size,color,disposition cat 複製 sort 和sorted 方法的比較 sort key none,reverse false 就地改變列表,sorted iterable,key none,reverse false 返回新的列表,對...

Python知識點總結篇(三)

with 自動關閉檔案 with open log r as f 複製 管道 用於匹配多個表示式中的乙個,匹配多個分組 問號 實現可選匹配 import re batregex re.compile r bat wo man mo1 batregex.search the adventures of...

Python知識點總結篇(五)

常見結構 demo bin 存放專案的一些可執行檔案 demo 可執行程式,啟動demo調main.py demo 存放專案所有原始碼,原始碼中所有模組 包都在此處 tests 存放單元測試 init py test main.py init py 空檔案,有這個檔案就是包,沒有就是目錄 main....