python 学习day5

1.字符串格式化
百分号格式化
s = " i am %s" % 'wyx'    #通过位置传递参数 ,格式化字符串类型
 
s = 'i am %(name)s' % {'name':'wyx'}   #通过命名传递参数

s = 'i have percent %.2f' % 1.111   #小数点类型

s = 'i have percent %(p).2f' % {'p':1.1}   #小数点命名传递参数


format格式
#索引传参
s1 = 'i am {0} age {1} age{1}'.format('wyx',123)

#名字传参,并格式化 :s 代表字符串格式化 :d 代表数字格式化
s2 = 'i am {name:s} age{age:d}'.format(name='wyx',age=18)

#位置传递参数,{}表示可以接受任意参数。
s3 = 'i am {} age {} {}'.format('wyx',18,'haha')

# *[] 通过列表把列表里面的每一个参数按照位置传递
s4 = 'i am {} age {} {}'.format(*['wyx',18,'haha'])

# **{} 把value传递到相应的key值 :s 代表字符格式化 :d 数字格式化
s5 = 'i am {name:s} age {age:d} really {name:s}'.format(**{"name":'wyx','age':18})

# :.2f 代表小数点后保留两位
s6 = 'i have {percent:.2f}'.format(percent=1.13233244)

#通过元素索引来传递参数
s7 = 'i am {0[0]} age{0[0]}'.format(['wyx','cxl',[18,19]])

#:b二进制 :o八进制 :d整数 :x十六进制 :%转换成百分比
s8 = 'numbes:{:b}{:o}{:d}{:x}{%}'.format(15,15,15,15,15W)


生成器
def func():
    print(111)
    yield 1
    print(2222)
    yield 2
    print(333)
    yield 3

ret = func()
r1 = ret.__next__() #进入函数找到yield,获取yield后面的数据1 #相当于return yield后面的数据 1
print(r1)
r2 = ret.__next__()
print(r2)
r3 = ret.__next__()
print(r3)

def myrange(arg):  #自己写的range函数
    start = 0
    while True:
        if start>arg:
            return
        yield start
        start+=1
ret = myrange(10)
r=ret.__next__()
print(r)


迭代器
 
def func(n):
    n+=1
    if n>5:
        return 'end'
    return func(n)
ret = func(1)
print(ret)

模块
存在方式:
    文件 文件夹

使用模块:
    先导入 后使用

模块:内置模块 第三方模块 自定义模块

导入模块的依据:
    import sys
    sys.path

导入模块方式:
    import modulename
    from xx import xx as oo
   
模块命名规则:不可以和内置模块名字相同

模块安装
    源码安装:下载下来源码通过 python.x setup.py install 安装
    pip 安装: pip3 install modulename

1、序列化相关

    import json
    import pickle

dic = {'a':'b'}
#json.dumps(dic)  序列化:将python基本类型转换成字符串

dic = '{'a':'b'}'
#json.loads(dic) 反序列化:将字符串转换成python基本类型

import pickle
li = [11,22,33]
r = pickle.dumps(li)
print(r)

result = pickle.loads(r)
print(result)

json/pickle
json更加适合跨语言/pickle仅适用于python
   +-------------------+---------------+
    | Python            | JSON          |
    +===================+===============+
    | dict              | object        |
    +-------------------+---------------+
    | list, tuple       | array         |
    +-------------------+---------------+
    | str               | string        |
    +-------------------+---------------+
    | int, float        | number        |
    +-------------------+---------------+
    | True              | true          |
    +-------------------+---------------+
    | False             | false         |
    +-------------------+---------------+
    | None              | null          |

时间模块
time&datetime

原文地址:https://www.cnblogs.com/bigjerry/p/5595469.html