week3
___________________________________函数________________________
返回值 = 0 ,返回 0
返回值 = 1, 返回object
返回值>1 ,返回tuple
-----------------''' 日志带日期 '''-------------
def log(a):
import time
a = input('daily paper:')
time_format = '%Y - %m - %d %X'
time_current = time.strftime(time_format)
with open('file_name' , w+','encoding') as f:
f.write('%s\n%s\n'%(a,time_current))
--------------------return-------------------
def text():
'''text'''
print(text1) #返回值为None
def text1():
'''text1'''
print('text1')
return 0 # 返回值为0
def text2():
'''text2"'
print('text2‘)
return 1,[1,2,3,4,5],'duanran',{'name' :'alex'} # 返回值为tuple
x = text
y = text1
z = text2
---------------------------函数参数-------------------
调用方法
1、位置参数调用
def text(x,y): #x,y为形参
print(x)
print(y)
text(1,2) # 1,2位实参
2、关键字参数调用
text(y = 2,x = 1)’
3、既有位置参数调用又有关键字参数调用,位置参数调用要在关键字参数之前
def text(x,y,z):
print(x,y,z)
text(1,z = 2 ,y = 3)
--------默认参数--------
def text1(x = 2 ,y)
print(x)
print(y)
text1(1)
>>>>>2,1
---------函数组----------
1、*args
def text(*args): #将输入的位置参数生成一个tuple
print(args)
text(1,2,3,4,5,[1,2,3])
2、**kwargs
def text(**kwargs):#将输入的关键字参数生成一个dictionary
print(kwargs)
text(name = 'alex',age = '20')
3、组合
def text(x,*args,*kwargs):
print(x,args,kwargs)
text(1,2,3,name = 'duanran',age = '20')
-------------高级函数
将一个函数作为参数传递到另一个函数中
def cul(a,b,f):
return f(a) + f(b)
cul(1,-9,abs) #取模
>>>>>>10
-------------递归函数
将一个函数形成环
def cal(n):
print(n)
if n // 2 > 0 :
return cal(n // 2)
cal(20)
>>>>>>>>>>20 10 5 2 1
------------------------------------------------全局参数与局部参数---------------------------------------
在python中变量的作用域为函数
a = 50
def g():
a = 20
print(a)
g()
print(a)
>>>>>>>>>>>>20 50
global
a = 50
def g():
global a
a = 20
print(a)
g()
print(a)
>>>>>>>>>>>>>20 20
--------------------------------------文件操作-----------------------------------
r是只读,w是写(如果写的文件存在,会直接覆盖原来的数据,不能读取),a是追加(也不允许读取)
r+读写(读追加,写的东西在最后一排)
w+ 写读(先创建一个新文件,如果文件存在将会覆盖)
a+ 追加写读
rb 二进制文件读
wb 二进制文件写
ab 二进制文件写
f = open('yesterday_2','r',encoding='utf-8')
print(f.tell())#读取当前位置,按字符个数来而不是行数
f.readline()
print(f.tell())
f.seek(0)#将指针回到起点,但并不是所有的都可以移动指针
print(f.tell())
f.seekable()#判定是否能移动指针
f.fileno()#判定是否为终端
f = open('yesterday_2','a',encoding='utf-8')
f.truncate()#如果没有参数,那么将会清空整个文件
f.truncate(10)#如果有参数,那么将从这里截断,后面全部清空
------读条操作
import sys,time
for i in range(20):
sys.stdout.write('*')
sys.stdout.flush()
time.sleep(1) ------------------------------------集合--------------------------
具有自动查重,关系测试等特点
a = set([1,2,3,3,4])
>>>>>>>>[1,2,3,4]
-----------关系测试--------
交集
a.intersection(b)
a & b
并集
a.union(b)
a | b
差集
a.difference(b)
a - b
对称差集(并集 - 交集)
a.symmetric_difference(b)
a ^ b
----------------增删改查------------
a.add()#增加某个固定值
a.update() # 增加多个元素
a.remove() # 指定删除,如果集合里没有这个数值,将会报错
a.pop() # 任意删除
a.discard # 指定删除,如果不存在不会报错
——————————————————————————字符编码___________________________
'''python3的文件编码格式是unicode,尽管在里面改成了utf-8,但实际上写的数据还是unicode,并且在python3中encode还把数据转成了
bytes类型'''
s_to_unicode = s.decode('utf-8') #告诉unicode原来是什么格式
s_to_gbk = s.encode('gbk')#告诉unicode需要转换成什么格式
print(s_to_gbk)
week3的更多相关文章
- 个人作业-Week3
个人作业-Week3 1. 软件工程师的成长 同学们在上这门课的时候,还是大三,你的困难和迷茫,别人一定有过.请看看别人怎么学习的,有些是科班,有些是野路子,有些成功,有些失败. 请读完下面所有博客( ...
- Spark小课堂Week3 FirstSparkApp(Dataframe开发)
Spark小课堂Week3 FirstSparkApp(代码优化) RDD代码简化 对于昨天练习的代码,我们可以从几个方面来简化: 使用fluent风格写法,可以减少对于中间变量的定义. 使用lamb ...
- Spark小课堂Week3 FirstSparkApp(RDD开发)
Spark小课堂Week3 FirstSparkApp 问题:Java有哪些数据结构 大致有如下几种,其中List与Map是最重要的: List Map Set Array Heap Stack Qu ...
- Deep Learning--week1~week3
week1 一张图片,设像素为64*64, 颜色通道为红蓝绿三通道,则对应3个64*64实数矩阵 为了用向量表示这些矩阵,将这些矩阵的像素值展开为一个向量x作为算法的输入 从红色到绿色再到蓝色,依次按 ...
- 20165214 2018-2019-2 《网络对抗技术》Exp1 PC平台逆向破解 Week3
<网络对抗技术>Exp1 PC平台逆向破解之"逆向及Bof基础实践说明" Week3 一. 实验预习 1.什么是漏洞?漏洞有什么危害? 漏洞就是在计算机硬件.软件.协议 ...
- 个人作业Week3
个人作业week3 一. 调研,评测 1.我的使用体验 版本:IOS版 BUG_1: 点击单词本中的“同步”后,会提示登录Microsoft账户.登录成功立即开始同步单词本.在单词本同步过程中, ...
- Week3 关于“微软必应词典客户端”的案例分析
第一部分 调研,评测 一.iphone客户端的bug挖掘: 1.在例句中点击单词或短语,如果这个时候点得稍微快了一点,关联相应的翻译时会出现混乱. 经过调查发现,这个bug应该是必应得一个全平台错误 ...
- [BUAA_SE_2017]案例分析-Week3
Week3 案例分析 一.调研评测 案例: 神策数据的数据概览功能 Demo: 电商类产品Demo 评价: d) 好,不错 个人评价:神策数据电商类产品Demo的数据概览功能是相当不错的.首先点击进入 ...
- 20165310 NstSec2019 Week3 Exp1 逆向与Bof基础
20165310 NstSec2019 Week3 Exp1 逆向与Bof基础 一.实验内容 实验目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用fo ...
- [buaa-SE-2017]个人作业-week3
个人作业-week3:案例分析 分析产品:Bing词典 Part1:调研&评测 1.软件评测和Bug汇报 这次我选择Bing词典的原因是在于,首先我使用过的词典软件较多,平台涵盖PC端.网站. ...
随机推荐
- PID算法(c 语言)(转)
PID算法(c 语言)(来自老外) #include <stdio.h> #include<math.h> //定义PID 的结构体 struct _pid { int pv; ...
- 算法(第四版)C# 习题题解——2.3
写在前面 整个项目都托管在了 Github 上:https://github.com/ikesnowy/Algorithms-4th-Edition-in-Csharp 查找更为方便的版本见:http ...
- day14带参装饰器,迭代器,可迭代对象 , 迭代器对象 ,for迭代器 , 枚举对象
复习 ''' 函数的嵌套定义:在函数内部定义另一个函数 闭包:被嵌套的函数 -- 1.外层通过形参给内层函数传参 -- 2.验证执行 开放封闭原则: 功能可以拓展,但源代码与调用方式都不可以改变 装饰 ...
- hdu2844 Coins -----多重背包+二进制优化
题目意思:给出你n种硬币的面额和数量,询问它能够组合成1~m元中的几种情况. 这题如果直接按照完全背包来写的话,会因为每一种硬币的数目1 ≤ Ci ≤ 1000而超时,所以这里需要运用二进制优化来解决 ...
- 最简单获取appPackage和appActivity 的方法
appPackage和appActivity 进行appium自动化测试必须的两个参数,我们所测试的APP项目不同,这两个参数肯定也是不一样的.我们启动的包都是靠这两个参数去驱动的,那么我们怎么可以快 ...
- [MySQL] timestamp和datetime的区别
建表语句如下: create table strong_passwd_whitelist( id int unsigned not null auto_increment, email_id int ...
- Apache 配置多个端口多站点(Linux)
for apache2 configuration: by default, apache is configured 80 port for the default web site. follow ...
- HTTP请求8种方法
HTTP/1.1协议中定义了八种方法(有时也叫“动作”)来表明Request-URI指定的资源的不同操作方式: OPTIONS 返回服务器针对特定资源所支持的HTTP请求方法.也可以利用向Web服务器 ...
- Win10升级惹的祸,Oracle服务全没有了,怎么解决?
最近Win10自动升级,升级后各种服务全部没了,心已经凉了一半... 百度\Google了一大堆,无非就几种:卸载重装,还原到上一版Win10,甚至重装系统,对于正式使用的库来说,够崩溃的了.. 搜寻 ...
- Go语言学习之11 日志收集系统kafka库实战
本节主要内容: 1. 日志收集系统设计2. 日志客户端开发 1. 项目背景 a. 每个系统都有日志,当系统出现问题时,需要通过日志解决问题 b. 当系统机器比较少时,登陆到服务器上查看即可 ...