python x 0b1011_python的基础(4)

标签:

lambda表达式

定义函数(普通方式)

deff1():return 123f2= lambda : 123

deff3(a1,a2):return a1+a2

定义函数(lambda表达式)

f4= lambda a1,a2: a1+a2

示例:

def f1(x):

if x % 2 ==1:

return x + 100

else:

return x

ret = map(lambda x: x + 100 if x % 2 ==1 else x, [1,2,3,4])

# print(ret)

for i in ret:

print(i)

运算结果:

101

2

103

4

内置函数

1,abs()

绝对值

参数可以是:负数、正数、浮点数或者长整形

i = abs(-123) #绝对值

print(i)

i= abs(-1.2)print(i)

i= abs(1.2)print(i)

i= abs(-11216.5)print(i)

i= abs(11216.5)print(i)

运算结果:123

1.2

1.2

11216.5

11216.5

2,all ()

循环参数

如果每个元素都为真,那么all的返回值为真

假: 0,None,"",[],(),{},  ==>   总结出;0,None,空值 为假

示例:

all([‘a‘, ‘b‘, ‘c‘, ‘d‘]) #列表list,元素都不为空或0

True

all([‘a‘, ‘b‘, ‘‘, ‘d‘]) #列表list,存在一个为空的元素

False

all([0,1,2, 3]) #列表list,存在一个为0的元素

False

all((‘a‘, ‘b‘, ‘c‘, ‘d‘)) #元组tuple,元素都不为空或0

True

all((‘a‘, ‘b‘, ‘‘, ‘d‘)) #元组tuple,存在一个为空的元素

False

all((0,1,2,3,4)) #元组tuple,存在一个为0的元素

False

all([])#空列表

True

all(())#空元组

True

3,any()

只有有一个真,则为真

defany(iterable):for i initerable:ifi:returnFalsereturn True

示例:

any([‘a‘, ‘b‘, ‘c‘, ‘d‘]) #列表list,元素都不为空或0

True

any([‘a‘, ‘b‘, ‘‘, ‘d‘]) #列表list,存在一个为空的元素

True

any([0,‘‘, False]) #列表list,元素全为0,‘‘,false

False

any((‘a‘, ‘b‘, ‘c‘, ‘d‘)) #元组tuple,元素都不为空或0

True

any((‘a‘, ‘b‘, ‘‘, ‘d‘)) #元组tuple,存在一个为空的元素

True

any((0,‘‘, False)) #元组tuple,元素全为0,‘‘,false

False

any([])#空列表

False

any(())#空元组

False

4,divmod(a,b)函数

divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数

li = divmod(10,3)print(li)

运算结果:

(3, 1)

5,eval()

可以执行一个字符串形式的表达式

ret = eval("122+45+53")print(ret)

运算结果:220ret= eval("a + 60",{"a":99})print(ret)

运算结果:159

6,exec()

可以执行py代码

exec("print(\"hello, world\")")

运算结果:

hello, world

7,filter()

过滤器

(函数,可迭代的对象)

示例:

法一:

def f1(x):

if x >22:

return True

else:

return False

ret = filter(f1,[11,22,33,44])

for i in ret:

print(i)

法二:

deff1(x):return x > 22ret= filter(lambda x: x > 22, [11,22,33,44])for i inret:print(i)

运算结果:33

44

8,map()

(函数,可以迭代的对象)

示例:

deff(x):return x *x

r= map(f, [1, 2, 3, 4, 5, 6])

list(r)

[1, 4, 9, 16, 25, 36]

9,globals()

获取全局变量  globals()对象的值能修改

deff1():

name= 123

print(globals(name))

10,locals()

获取局部变量  locals()对象的值不能修改

deff1():

name= 123

print(locals(name))

11,isinstance()

判断某个对象是否存在某个类创建的

a = 10

defb():pass

print(isinstance(a,(int,str)))print(isinstance(a,(float,str)))print(isinstance(b,(str,int)))classc:passobj=c()print(isinstance(obj,(c,int)))

运算结果:

True

False

False

True

12,__repr__

ascii对象的类中找 __repr__,获取其返回值

classFoo:def __repr__(self):return "hello"obj=Foo()

r=ascii(obj)print(r)

运算结果:

hello

13,iter()

迭代方法,依次取值

obj = iter([11,22,33,44])print(obj)

r1=next(obj)print(r1)

r2=next(obj)print(r2)

r3 = next(obj)

print(r3)

运算结果:11

22

33

14,max()

取最大值

li = ([11,22,33,44,1])

r=max(li)print(r)

运算结果:44

15,min()

取最小值

li = ([11,22,33,44,1])

r=min(li)print(r)

运算结果:1

16,pow(x,y)

求次方

i = pow(2,10)print(i)

运算结果:1024

17,sum()

求和

r = sum([11,22,33,44])print(r)

运算结果:110

18,zip()

zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表

a = [1,2,3]

b= [4,5,6]

r=zip(a,b)for i inr:print(i)

运算结果:

(1, 4)

(2, 5)

(3, 6)

19,import()

导入

import math #入导math模块

math.floor() #调用math模块中的floor()函数

python from使用方法例如:from math import floor #导入math模块中的floor函数方法

floor() #调用floor()函数方法

20,sort()

排序

li = [11,33,55,22,55,]print(li)

li.sort()print(li)

运算结果:

[11, 33, 55, 22, 55]

[11, 22, 33, 55, 55]

21,flush()

刷新内部缓冲区

示例:

f = open("foo.txt", "wb")print ("Name of the file:hello word"), f.name

f.flush()

f.close()

运算结果:

Name of the file:hello word

22,read()

读取文件内容   (给read加上一个参数,指定要读取的最大行数)

示例:

f = open("a_f.dat","rb")

data= f.read(10000)

f.close()

23,readline

readline()方法的语法:

进制

r = bin(11) #二进制

print(r)

r= oct(8) #八进制

print(r)

i= int(10) #十进制

print(i)

r= hex(14) #十六进制

print(r)

运算结果:

0b1011

0o1010

0xe

进制转换

示例:

int(10)

i= int(‘0b11‘,base=2) #二进制转换十进制

print(i)

i= int(‘0o11‘,base=8) #八进制转换十进制

print(i)

i= int(‘0xe‘,base=16) #十六进制转换十进制

print(i)

运算结果:3

9

14

字节,字符串

示例:

#bytes("xxxx",encoding="utf-8")

i= bytes("你好,世界",encoding="utf-8")

print(i)

运算结果:

b‘\xe4\xbd\xa0\xe5\xa5\xbd\xef\xbc\x8c\xe4\xb8\x96\xe7\x95\x8c‘

chr() 数字转换成字符 # 只适用在ascii中

示例:

c = chr(253)print(c)

运算结果:

y

ord() 字符转换成数字# 只适用在ascii中

示例:

c = ord(‘x‘)print(c)

运算结果:120

随机验证码:

importrandom

temp= ""

for i in range(6):#生成 0—4的随机数

num = random.randrange(0,4)#如果随机数是1 或 3,那么就在验证码中生成一个 0—9的随机数字

#否则,验证码中生成一个随机字母

if num == 3 or num== 1:

rad2= random.randrange(0,10)

temp= temp +str(rad2)else:

rad1= random.randrange(65,91)

c1=chr(rad1)

temp= temp +c1print(temp)

文件操作

一,打开文件

二,操作文件

三,关闭文件

open (文件名,模式,编码)

格式:

f =open("文件名","r") #r 只读模式

data=f.read()

f.close()

peint(data)

打开文件的模式:

普通方式(python内部自动转换)

1)只读模式,r

f = open("ha.log","r")

f.write("kdjaskjskasdksjdaksj")

f.close

2)只写模式,w 【不可读,文件不存在则创建;存在则清空文件内容再写入】

f = open("ha1.log","w")

f.write("sdhjf43dk3rfk")

f.close()

3)只写模式,x 【不可读;文件不存在则创建;文件存在则报错】

f = open("ha2.log","w")

f.write("dahhadiu3528")

f.close()

4)追加模式【不可读;不存在的则创建;存在则追加到末尾】

f = open("ha2.log","a")

f.write("666jjjksk")

f.close()

以字节的方式(二进制的方式)“b”

1)只读模式,rb 【文件不存在则创建;文件存在则清空内容】

f = open("ha.log","rb")

data=f.read()

f.close()print(data)

str_data= str(data, encoding="utf-8")print(str_data)

2)只读模式,wb 【文件不存在则创建;存在则清空内容】

f = open("ha.log","wb")

str_data= "中国人"bytes_data= bytes(str_data, encoding="utf-8")

f.write(bytes_data)

f.close()

同时读写文件 “+”

1)r+ 开始向后读,写时追加,指针调到最后

2)w+,先清空,再写,才可以读。写,指针到最后

3)x+如果文件存在则报错

4)a+,打开的同时指针已经移到最后,追加在最后

f.tell()#获取指针的位置

f.seek(num) #调整指针位置

f.write("")#写入

f.read("") # 读取

关闭文件

with open ("ha.log","r") as f :

f.read()

同时打开两个文件(2.7以上版本)

with open(‘log1‘,‘r‘) as obj1, open(‘log2‘, ‘r‘) as obj2:passwith open(‘源文件‘,‘r‘) as obj1, open(‘新文件‘, ‘w‘) as obj2:for line inobj1:

obj2.write(line)

标签:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值