python_基本语法学习_2


# 枚举
s = ['a', 'b', 'c']
for i, v in enumerate(s):
    print(i, v)

# 创建迭代器
class TestIter():
    def __init__(self,lst):
        self.lst = lst
    def __iter__(self):
        print('__iter__ is called')
        return iter(self.lst)

# t = TestIter()
t = TestIter([1,3,5,7,9])

for e in t:
    print(e)
# 同理
for e in t.__iter__():
    print(e)


r = [1,2,3]
for i in range(len(r)-1,-1,-1):
    print(r[i])


# 打包
# 聚合各个可迭代对象的迭代器:
x = [3,2,1]
y = ['a','b','c']
list(zip(x,y))

for i ,j in zip(y,x):
    print(i,j)


# 过滤器
# 函数通过 lambda 表达式设定过滤条件,保留 lambda 表达式为True的元素:
fil = filter(lambda x: x>10, [1,21,3,4,8,22])
for e in fil:
    print(e)

# 链式操作
from operator import (add, sub)
def add_or_sub(a,b,oper):
    return (add if oper=='+' else sub)(a,b)

# split 分割
s = 'I love python'.split(' ')

# replace 替代
s = 'I love python'.replace(' ', ',')

# 反转字符串
st = 'python'
''.join(reversed(st))

import time
seconds = time.time()   # 当前时间

# 浮点数转时间结构体
local_time = time.localtime(seconds)

# 时间结构体转时间字符串
str_time = time.asctime(local_time)
# 时间结构体转指定格式时间字符串
format_time = time.strftime('%Y.%m%d %H:%M:%S', local_time)

# 时间字符串转时间结构体
time.strptime(format_time,'%Y.%m.%d %H:%M:%S')


# with 读写文件
import os,sys
path = r'G:\Test'
os.listdir(path)

# 读文件
with open(path, mode='r',encoding='utf-8') as f:
    o = f.read()
    print(o)

# 写文件
w_path = r'G:\Test\1.txt'
with open(w_path, mode='w', encoding='utf-8') as f:
    w = f.write("I love python \n It\'s so simple")
    os.listdir()

# 提取后缀名
import os
os.path.splitext(w_path)

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章