第二天(Python打卡)

数值类型:整型,浮点型,布尔类型,e记法(结果为浮点型)

类型转换:int(),float(),str()

获得关于类型的信息:type(), isinstance()

type(a)
isinstance(a,str)

算数操作符:+,-,*,/(区别:5/2=2.5),%,**(幂运算),//(地板整除)

优先级问题:幂运算>正负号>算数操作符>比较操作符(允许3<4<5)>逻辑运算符(not,and,or)

可有效避免悬挂else(因严格缩进):

if(...):
    if(...):
        print("...")
else:
    print("...")
条件表达式(三元操作符):
x,y=4,5
if x<y:
    small = x
else:
    small = y
等价于 
small = x if x<y else y
断言:当条件为假时,程序自动崩溃并抛出AssertionError的异常,用于确保程序中的某个条件一定为真才能让程序正常工作。
e.g.  asset 3>4

for循环:  

for 目标 in 表达式:
    循环体
range() :  range([start,]stop[,step=1]),生成数字序列。
for i in range(5):
    print(i)

for i in range(1,7):
    print(i)

两个关键的语句:break,continue

序列:列表,元组和字符串的共同点:都可以通过索引得到每一个元素;默认索引值都是从零开始;可以通过分片的方法得到一个范围的元素的集合;有很多共同的操作符(重复操作符,拼接操作符,成员关系操作符)

列表:

            列表推导式:a=[x for x in range(100) if not (x%2) and x%3]

            向列表中添加元素:append(): 插入一个元素。

                                          extend():利用一个列表插入多个元素。

                                          insert(索引,元素)

            分片(切片):

list[:3]
list[3:]
list = [1,2,3,4]

            区别list1与list2:
          
list1 = list[:]
list2 = list              

元组:戴上了枷锁的列表

字典:

        推导式:{i : i%2 == 0 for i in range(10)}

集合:推导式:{i for i in range(10)}

生成器推导式:(i for i in range(10) if i%2)

枚举 enumerate(可迭代对象):

>>> list(enumerate(list2))
#[(0, 3), (1, 54), (2, 6), (3, 3), (4, 4)]

zip():    

>>>a = [1,2,3,4,5,6,7,8]
>>>b = [1,2,3,4,5]
>>>list(zip(a,b))
#[(1,1),(2,2),(3,3),(4,4),(5,5)]
函数参数:

    默认参数一定要用不可变对象,如果是可变对象,程序运行时会有逻辑错误!

    要注意定义可变参数和关键字参数的语法:

    *args是可变参数,args接收的是一个tuple;

def sum1(*num):
    result = 0
    for i in num:
        result += i
    return result

n = [1,2,3,4]
s = sum1(*n)
print(s)

    **kw是关键字参数,kw接收的是一个dict。

def sum2(**num):
    for key,value in num.items():
        print(key+"-->"+value)

n1 = {'1':'one','2':'two','3':'three'}
sum2(**n1)

     以及调用函数时如何传入可变参数和关键字参数的语法:

    可变参数既可以直接传入:func(1, 2, 3),又可以先组装list或tuple,再通过*args传入:func(*(1, 2, 3))

    关键字参数既可以直接传入:func(a=1, b=2),又可以先组装dict,再通过**kw传入:func(**{'a': 1, 'b': 2})

局部变量与全局变量:如一定要用局部变量修改全局变量用global。

匿名函数lambda:  

lambda 参数 :返回值表达式
过滤器  filter(过滤条件 ,过滤对象):过滤False,剩下 True。

映射map(映射关系,映射对象)          

>>>list(filter(lambda x : x%2,range(10)))
#[1,3,5,7,9]
>>>list(map(lambda x : x*2,range(10)))
#[0,2,4,6,8,10,12,14,16,18]


猜你喜欢

转载自blog.csdn.net/qq_41191024/article/details/79967166