python 内置函数 lamda表达式。 open 文件方法
lamda 表达式
lambda表达式
学习条件运算时,对于简单的 if else 语句,可以使用三元运算来表示,即:
普通的条件语句
if 1 == 1:
name = 'kaixin'
else:
name = 'gege'
print(name) 三元运算表示方法 name = 'kaixin' if 1 == 1 else 'gege'
print(name) 对于简单的函数,也存在一种简便的表示方式,即:lambda表达式 lambda 表达式 简单函数的简单表示方式
创建形式参数 创建函数内容 并把结果 a+1 return
func = lambda a:a+1 #定义函数 冒号前边是参数,后边是函数体,函数内部执行的代码只能是一行
ret = func(32)
print(ret)
abs 绝对值
i = abs(123)
print(i) bool,判断真假,把一个对象转换成布尔值,None,"" [] {} () # all 循环序列参数,如果每个元素都为真,那么all的返回值则为真 #如果列表里有一个元素是假的就是Fales
r = all([123,345,None])
print(r) # any 只有一个真 则为真 整体的返回值就是真
i = any([None,'',[],{},(),1])
print(i) ascii() #对象的类中找类型的功能获取其返回值
#自动执行int类型里的repe方法把返回值赋给 ret
ret = ascii(8) ==int.__repr__()
class Foo:
def __repr__(self):
return 'bbbb43fdsffdb'
f = Foo()
ret = ascii(f)
print(ret) #二进制 0b1010 就是二进制
r = bin(11)
print(r) r1 = oct(8) #八进制
print(r1) r = int(10) #十进制
print(r) r = hex(10) #十六进制
print(r) #二进制转换十进制
int(10)
i = int('0b11',base=2)
print(i) #八进制转十进制
i = int ('11',base=8)
print(i) #十六进制转十进制
i = int ('0xe',base=16)
print(i) str #字符串
list #列表 bytearray 汉字转换字节数组
p = bytearray('郭凯欣',encoding='utf-8')
print(p) bytes 字节转换字符串
bytes('xxxx',encoding='utf-8')
callable() 是否可执行
f = lambda x:x+1
print (f(5))
callable(f) #返回True chr() #把数字转换成ascii码字符
ord() #把ascii码字符转换成数字 一个字节,8位, 2**8,256: A B c( 只限于ascii码 #把数字转换成字符
c = chr(66)
print(c)
#把字符转换成数字
i = ord('t')
print(i) eval() 可以执行一个字符串的表达式 .得 8 赋给返回值
i = eval('3+5')
print(i) map #接收两个参数 (函数。可以迭代的对象)
li = [11,22,33,]
new_li = map(lambda x:x+100,li) lamda表达式添加序号
def func(x):
return x+100 new_li = map(func,li)
print(list(new_li))
l = list(new_li)
print(l)
for i in new_li:
print(i) filter 过滤 循环可以迭代的对象,获取每一个参数函数(参数)
li = [123,234,345,456]
def func(x):
if x>33:
return True
else:
return False
print(li)
print(filter(func,li))
n = filter(func,li)
print(list(n)) max() #取最大值
i = max(11,22,33,456)
print(i) min() #取最小值
i = min(11,22,33,456)
print(i)
i = round(2.7) #四舍五入
print(i)
li =[1,2,3]
print(help(li)) #显示所有变量或类的介绍
print(dir(li)) #查看变量或者类型,可以使用的函数,属性,如果是类必须用引号
print(type(li)) #查看类型
print(id(li)) # 查看id地址
locals 当前的局部变量
globals 当前的全局量。
divmod(a,b)方法返回的是a//b(除法取整)以及a对b的余数,返回结果类型为tuple
# a = 10 / 3
# print(a)
D:\python3.5\python.exe D:/untitled/python2/denglu.py
3.3333333333333335
a = divmod(10,3)
print(a)
D:\python3.5\python.exe D:/untitled/python2/denglu.py
(3, 1)
eval 执行字符串形式的表达是
a = eval('1 + 3')
print(a)
D:\python3.5\python.exe D:/untitled/python2/denglu.py
4
isinstance()判断某个对象是否是某一个类创建的,如果是返回True,否则False
li = [11,'wqwq']
q = isinstance(li,int)
print(q)
D:\python3.5\python.exe D:/untitled/python2/denglu.py
False
li = [11,'wqwq']
q = isinstance(li,list)
print(q)
D:\python3.5\python.exe D:/untitled/python2/denglu.py
True pow()指数
a = pow(2,30)
print(a)
D:\python3.5\python.exe D:/untitled/python2/denglu.py
1073741824
sum求和
a =sum([1,2,3,4,4,5,4,])
print(a)
D:\python3.5\python.exe D:/untitled/python2/denglu.py
23 zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表。
li = [1,2,3,4]
qi = ['a','b']
a = zip(li,qi)
for i in a:
print(i)
D:\python3.5\python.exe D:/untitled/python2/denglu.py
(1, 'a')
(2, 'b')
random验证码
# import random 导入 随机模块,
#验证码的操作
random.randint(1,99) #随机数字
temp = '' 定义一个空字付串
for i in range(6): 循环6次
q = random.randrange(0,4) 自动生成一个0-4的随机数
if q == 3 or q == 1: 如果随机数等于3 或 1就生成小写字母
c2 = random.randrange(0,10) 生成 0--10内的随机数
temp = temp + str(c2) 向变量中添加当前数字对应的ascii码的字符
else:
c = random.randrange(65,91) 生成 65-91内的随机数
z = chr(c)
temp = temp + z 向变量中添加当前数字对应的ascii码的字符
print(temp)
open函数,该函数用于文件处理
操作文件时,一般需要经历如下步骤:
- 打开文件
- 操作文件
- 关闭文件
open(文件名,模式,编码) 先创建一个ha.log文件 f = open('ha.log') #打开文件
data = f.read() #读取文件
f.close() #关闭文件
print(data) #打印文件内容
打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。
打开文件的模式有:
•r ,只读模式【默认】
•w,只写模式【不可读;不存在则创建;存在则清空内容;】
•x, 只写模式【不可读;不存在则创建,存在则报错】
•a, 追加模式【可读; 不存在则创建;存在则只追加内容;】
#默认的是只读模式 默认的utf-8编码模式
f = open('da','r')
z = f.read()
f.close()
print(z) # 只写模式 不加编码会乱码
f = open('da','w',encoding='utf-8')
f.write('世界')
f.close() # 只写 不存在创建 存在则报错
f = open('da','x',encoding='utf-8')
f.write('世界')
f.close() # 追加 a
f = open('da','a')
f.write('456')
f.close()
"+" 表示可以同时读写某个文件
•r+, 读写【可读,可写】
•w+,写读【可读,可写】
•x+ ,写读【可读,可写】
•a+, 写读【可读,可写】
#带r+号,即可读可写
# w 写的时候,默认在末尾追加 指针到最后
f = open('ha2.log','r+',encoding='utf-8')
print(f.tell()) # 指针为零 ,起始位置
data = f.read(3)
print(type(data),data)
print(f.tell())
f.write('萨比‘)
data = f.read()
print(type(data),data)
f.write('日本人')
f.seek(0)
f.close() # w+ 会先情空,写完之后才可以读了,写 ,指针到最后
f = open('ha.log','w+',encoding='utf-8')
f.write('别傻了老弟')
data = f.read()
f.close()
print(data)
#x+跟w+一样,唯一不同的是如果文件存在则报错 # a+ 打开的同时,指针就在最后
f = open('ha.log','a+',encoding='utf-8')
print(f.tell())
data = f.read()
print(data)
f.seek(0)
data = f.read()
print(data)
f.close()
"b"表示以字节的方式操作
•rb 或 r+b
•wb 或 w+b
•xb 或 w+b
•ab 或 a+b
注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型
f = open('da','rb')
data =f.read()
f.close()
print((data))
str_data = str(data,encoding='utf-8')
print(str_data) f = open('da','wb')
str_data = '世界'
bytes_data = bytes(str_data,encoding='utf-8')
f.write(bytes_data)
f.close()
f = open('da','wb')
f.write(bytes('中国',encoding='utf-8'))
f.close()
str_data = '世界'
bytes_data = bytes(str_data,encoding='utf-8')
f.write(bytes_data)
f.close()
f = open('da','r+',encoding='utf-8') #打开文件
s = f.read() #读取内容
s = f.read(1) #读取内容后的第一个字节
f.close # 关闭文件
print(s) f = open('da','w+',encoding='utf-8')
f.write('beicui') #写入内容 f = open('da','r+',encoding='utf-8')
s = f.tell() # 查看指针当前位置
print(s)
a = f.seek(2) #调整指针的位置
print(a) f = open('da','r+',encoding='utf-8')
s = f.fileno() #文件描述符
print(s) f = open('da','r+',encoding='utf-8')
f.write('1去玩儿童体验与西欧')
s = f.flush() #强制刷入内存
print(s) f = open('da','r+',encoding='utf-8')
print(f.readline()) #读取一行内容 f = open('da','r+',encoding='utf-8')
f.seek(5)
s = f.truncate() #截取位置前的字符
print(s) f = open('da','r+',encoding='utf-8')
s = f.readlines() #以列表的形式显示
print(s) with open('da',"r") as f: #打开方式 py2.7之后支持同时打开两个文件:
with open("da1","r") as f1,open("da","r") as f2:
python 内置函数 lamda表达式。 open 文件方法的更多相关文章
- python内置函数print输出到文件,实现日志记录的功能
# bulid time 2018-6-22 import os import time def log(*args, **kwargs): # *kargs 为了通用 可不传 rule = &quo ...
- python内置函数,lambda表达式,文件读写
Lambda表达式: lambda是个匿名函数,自动加return返回 a={ 6:2,8:0, 1:4,-5:6,99:11,4:22} print(sorted(a.items()))#按key排 ...
- python 内置函数和表达式
对于简单的函数来说,可以使用类似于三元运算来表示,即: lambda表达式 格式: lambda [arg1[, arg2, ... argN]]: expression 先来看看三元表达式 #普 ...
- lambda 表达式+python内置函数
#函数 def f1(a,b): retrun a+b #lambda方式,形参(a,b):返回值(a+b) f2=lambda a,b : a+b 在一些比较简单的过程计算就可以用lambda p ...
- 使用文件描述符作为Python内置函数open的file实参调用示例
一.关于文件描述符 open()函数的file参数,除了可以接受字符串路径外,还可以接受文件描述符(file descriptor),文件描述符是个整数,对应程序中已经打开的文件. 文件描述符是操作系 ...
- Python 内置函数笔记
其中有几个方法没怎么用过, 所以没整理到 Python内置函数 abs(a) 返回a的绝对值.该参数可以是整数或浮点数.如果参数是一个复数,则返回其大小 all(a) 如果元组.列表里面的所有元素都非 ...
- 【转】python 内置函数总结(大部分)
[转]python 内置函数总结(大部分) python 内置函数大讲堂 python全栈开发,内置函数 1. 内置函数 python的内置函数截止到python版本3.6.2,现在python一共为 ...
- python内置函数,匿名函数
一.匿名函数 匿名函数:为了解决那些功能很简单的需求而设计的一句话函数 def calc(n): return n**n print(calc(10)) #换成匿名函数 calc = lambda n ...
- python 内置函数总结(大部分)
python 内置函数大讲堂 python全栈开发,内置函数 1. 内置函数 python的内置函数截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是pytho ...
随机推荐
- BZOJ 3110 【Zjoi2013】 K大数查询
Description 有N个位置,M个操作.操作有两种,每次操作如果是1 a b c的形式表示在第a个位置到第b个位置,每个位置加入一个数c如果是2 a b c形式,表示询问从第a个位置到第b个位置 ...
- iOS开发 传感器(加速计、摇一摇、计步器)
一.传感器 1.什么是传感器传感器是一种感应\检测周围环境的一种装置, 目前已经广泛应用于智能手机上 传感器的作用用于感应\检测设备周边的信息不同类型的传感器, 检测的信息也不一样 iPhone中的下 ...
- QT 数据库编程二
//logindlg.cpp #include "logindlg.h" #include <QGridLayout> #include <QHBoxLayout ...
- SQL server 数据库备份还原Sql
/************ 一.数据库备份 ************/ --完整备份默认追加到现有的文件 backup database DBXS To disk='d:\backup\DBXS_fu ...
- SEO初级优化--HTML、CSS、JS
HTML: 1.标签的有开有合. 2.避免冗余代码,例如去除空格字符. 3.合理利用标签语义化. 4.合理的嵌套规则,避免行元素内嵌套块元素. 5.img标签内需要添加title属性和alt属性. 6 ...
- Ehcache 整合Spring 使用页面、对象缓存
Ehcache 整合Spring 使用页面.对象缓存 Ehcache在很多项目中都出现过,用法也比较简单.一 般的加些配置就可以了,而且Ehcache可以对页面.对象.数据进行缓存,同时支持集群/分布 ...
- <实训|第九天>掌握linux中普通的权限控制和三种特殊的权限(sst),做合格的运维工程师
linux中,权限的学习是必不可少的,不论是作为一名运维工程师或者是单一的管理者,学习好linux中的权限控制,你就可以保护好自己的隐私同时规划好你所管理的一切. 权限的学习是很多的,不要认为自己已经 ...
- 【干货分享】JPager.Net MVC超好用轻量级分页控件
JPager.Net MVC好用的轻量级分页控件,好用到你无法想象,轻量到你无法想象. JPager.Net MVC好用的轻量级分页控件,实现非常简单,使用也非常简单. JPager.Net M ...
- .NET基于Redis缓存实现单点登录SSO的解决方案
一.基本概念 最近公司的多个业务系统要统一整合使用同一个登录,这就是我们耳熟能详的单点登录,现在就NET基于Redis缓存实现单点登录做一个简单的分享. 单点登录(Single Sign On),简称 ...
- MVC+EF 理解和实现仓储模式和工作单元模式
MVC+EF 理解和实现仓储模式和工作单元模式 原文:Understanding Repository and Unit of Work Pattern and Implementing Generi ...