___________________________________函数________________________

返回值 = 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的更多相关文章

  1. 个人作业-Week3

    个人作业-Week3 1. 软件工程师的成长 同学们在上这门课的时候,还是大三,你的困难和迷茫,别人一定有过.请看看别人怎么学习的,有些是科班,有些是野路子,有些成功,有些失败. 请读完下面所有博客( ...

  2. Spark小课堂Week3 FirstSparkApp(Dataframe开发)

    Spark小课堂Week3 FirstSparkApp(代码优化) RDD代码简化 对于昨天练习的代码,我们可以从几个方面来简化: 使用fluent风格写法,可以减少对于中间变量的定义. 使用lamb ...

  3. Spark小课堂Week3 FirstSparkApp(RDD开发)

    Spark小课堂Week3 FirstSparkApp 问题:Java有哪些数据结构 大致有如下几种,其中List与Map是最重要的: List Map Set Array Heap Stack Qu ...

  4. Deep Learning--week1~week3

    week1 一张图片,设像素为64*64, 颜色通道为红蓝绿三通道,则对应3个64*64实数矩阵 为了用向量表示这些矩阵,将这些矩阵的像素值展开为一个向量x作为算法的输入 从红色到绿色再到蓝色,依次按 ...

  5. 20165214 2018-2019-2 《网络对抗技术》Exp1 PC平台逆向破解 Week3

    <网络对抗技术>Exp1 PC平台逆向破解之"逆向及Bof基础实践说明" Week3 一. 实验预习 1.什么是漏洞?漏洞有什么危害? 漏洞就是在计算机硬件.软件.协议 ...

  6. 个人作业Week3

    个人作业week3 一.  调研,评测 1.我的使用体验 版本:IOS版   BUG_1: 点击单词本中的“同步”后,会提示登录Microsoft账户.登录成功立即开始同步单词本.在单词本同步过程中, ...

  7. Week3 关于“微软必应词典客户端”的案例分析

    第一部分  调研,评测 一.iphone客户端的bug挖掘: 1.在例句中点击单词或短语,如果这个时候点得稍微快了一点,关联相应的翻译时会出现混乱. 经过调查发现,这个bug应该是必应得一个全平台错误 ...

  8. [BUAA_SE_2017]案例分析-Week3

    Week3 案例分析 一.调研评测 案例: 神策数据的数据概览功能 Demo: 电商类产品Demo 评价: d) 好,不错 个人评价:神策数据电商类产品Demo的数据概览功能是相当不错的.首先点击进入 ...

  9. 20165310 NstSec2019 Week3 Exp1 逆向与Bof基础

    20165310 NstSec2019 Week3 Exp1 逆向与Bof基础 一.实验内容 实验目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用fo ...

  10. [buaa-SE-2017]个人作业-week3

    个人作业-week3:案例分析 分析产品:Bing词典 Part1:调研&评测 1.软件评测和Bug汇报 这次我选择Bing词典的原因是在于,首先我使用过的词典软件较多,平台涵盖PC端.网站. ...

随机推荐

  1. GHSpro多数据库连接

    GHSpro多数据库连接 文章 1 数据连接 XXX.Application.Web -> XmlConfig -> database.config <connectionStrin ...

  2. vue-cli webpack浅析

    一直对脚手架的webpack配置很感兴趣. 长话短说,先从npm start开始. 打开package.json 找到scripts 可以看到start 运行的是dev, dev 又是从 build/ ...

  3. vue - 列表显示(列互相影响,全选控制,更新数据)

    要实现的效果为:全选,且列A列B互相影响,列B勾选则列A一定勾选,列A取消勾选,则相应列B取消勾选 数组 vue中列表渲染有些不是相应式的 var list=[ { a:'aaaa', b:'ddd' ...

  4. Java中日期格式(String、Date、Calendar)的相互转换

    package day20190318; import java.text.ParseException; import java.text.SimpleDateFormat; import java ...

  5. Synchronized使用方法

    Synchronized是我们常用来维持线程安全时使用的一个关键字,内部通过monitor(监视器锁,由C++实现)来实现.而monitor本质又是依赖底层操作系统的mutex lock来实现.而操作 ...

  6. bzoj1452 [JSOI2009]Count ——二维树状数组

    中文题面,给你一个矩阵,每一个格子有数字,有两种操作. 1. 把i行j列的值更改 2. 询问两个角坐标分别为(x1,y1) (x2,y2)的矩形内有几个值为z的点. 这一题的特点就是给出的z的数据范围 ...

  7. memcached、cookie、session

    Memcached(一个高性能的分布式的内存对象缓存系统) 可用来分担数据库的压力.通过在内存里维护一个统一的巨大的hash表,memcached能存储各种各样的数据,包括图像.视频.文件.以及数据库 ...

  8. CSS--block inline inline-block

    display:block block元素会独占一行,多个block元素会各自新起一行.默认情况下,block元素宽度自动填满其父元素宽度. block元素可以设置width,height属性.块级元 ...

  9. python多版本共存

    根据环境变量的顺序调用python,pip等程序 将python.exe修改为python2.exe(或python3.exe)后可以通过不同的名字调用不同版本的python 注意修改Anaconda ...

  10. Lab 10-2

    The file for this lab is Lab10-02.exe. Questions and Short Answers Does this program create any file ...