python的集合与函数

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。

函数能提高应用的模块性,和代码的重复利用率。Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。

定义一个函数:

定义一个由自己想要功能的函数,以下是简单的规则:

  • 函数代码块以def关键词开头,后接函数标识符名称和圆括号()
  • 任何传入参数和自变量必须放在圆括号里。圆括号之间可以用于定义参数。
  • 函数内容以冒号起始,并且缩进。
  • return[表达式]结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。

eg:  def  dealnum (x,y):

if x>= y:

s = x*y

return s

函数的调用:

函数名()

函数定义时候不执行,函数必须在调用的时候传递参数才能够执行。

函数的参数问题

1)必选参数:  形式参数:

eg:

def add(x,y):     ------函数定义

return x+y

add(1,2)     -----------函数调用

默认参数:

def   sum(x,y=2)       ----------函数定义

return x**y

sum (3)     --------直接传递x的值,y值默认

可变参数:函数定义的参数个数是可以发生变化的,可变参数可以理解为在刚刚开始的时候装入 了一个空的tuple

形式参数:def  add(*args):                   --------------定义函数

sum = 0

for i in args:

sum += i

print sum

add(1,2,3,4,5,6,7)             --------------args变量名指向了一个元组

关键字参数:关键字参数和可变参数类似,都可以接收参在数数量不确定的时候使用,但是关键字参数可以传入含参数名的参数,就相当于是传入了一个dict,这是关键字参数和可变参数的最大不同之处。

def  dealperson(name,age,**other):

print name,age,other

dealperson("james",33,"paly"=basketball,"size"=114)

函数return问题:

在定义一个函数之后必须用关键字return来返回一个数值

请比较一下两个式子:

 

这两个函数一个在函数体中定义了return x+y, 一个则是直接print x+y,输出结果表示,函数如果在没有return时,会自动返回一个None;

返回多个值:

函数的作用域:

global    定义一个全局变量,在函数体内部只能定义一个局部变量。

函数的高级特性:迭代:

eg   请找出0到20之内所有偶数的平方:

集合:集合和列表和元组最大的区别就是在于集合有去重的作用,所以说集合不是一个重复的数据结构,还有可以判断两个集合之间是否有交集,并集,差集,是否子集等作用。

集合的定义:1)s = {1,2,3,4}   --------此时的是一个集合,但是s={}时候s为一个字典类型。

2)s = set ()        --------直接通过工厂方法来赋值。

所有的数据类型通过转化为集合类型就可以具有无重性:

eg:li=[1,2,3,4,4,3,2]

s = set(li)    -------此时的s就是一个集合,具有无重性。

eg: li={1,2,3,4,3,2}

d = {}.fromkeys(li);        ----------字典的去重。

集合和字典类似,是无顺的,并且不能切片、索引、重复、也不支持连接等动作,但是支持迭代(for)、成员查找等动作。

集合的增、删、改:

增加:s={1,3,4,5}

s.add(9)      -------------通过add()函数直接给集合添加元素,

s1 = {"hello,world"}

s.update(s1)        ---------------通过update()函数把两个集合连接起来。

删除:s.pop()             ---------------可以理解为出栈

s.remove(1)       ---------------删除指定元素‘1’

s.discard()         ----------------删除集合s本身,如果s集合不存在将do   nothing

s.clear()            -----------------清空集合s中的所有元素

集合最大的作用就是去重性:

先定义集合,确保产生的数字没有重复性,然后转化为列表,通过li.sort()函数按照从下到打的顺序排列好。

原文地址:http://blog.51cto.com/13355576/2059178

时间: 2024-10-10 00:57:52

python的集合与函数的相关文章

Python Set集合,函数,深入拷贝,浅入拷贝--小白基础

1.Set基本数据类型 a.set集合,是一个无序且不重复的元素集合 class set(object): """ set() -> new empty set object set(iterable) -> new set object Build an unordered collection of unique elements. """ def add(self, *args, **kwargs): # real signat

Python之集合、函数

一 集合1 集合定义:A 如果花括号为空,则是字典类型B 定义一个空集合,使用set 加小括号使用B方式定义集合时,集合内部的数必须是可迭代对象,数值类型的不可以 集合的简单应用(实现对集合内元素的去重操作,此操作可应用于对列表的去重)1 使用集合对列表进行去重操作 2 使用字典的键不重复性对列表进行去重 集合的增删改查 1 集合的增:A add 实现对非可变类型数据的添加操作(除列表,字典) B update 实现对可迭代对象的加入操作(数值类型则不能加入其中) 2 删 A pop()支持对集

Python:集合、函数、三元运算符

集合: #一种数据类型,有去重的功能,无序的(不能根据下标取值) 两种定义集合方法: 1:先定义一个列表,然后通过强制类型转换成集合 a=[1,2,3,4,4,5]  #set(a) 强制类型把列表a转换为集合,会把重复的值4去重 2:S={1,2,3,4}  #与字典要区别开 集合的操作: list1 = {1, 2, 3, 4, 5, 6, 9} list2 = {2, 3, 4, 6, 1} list3 = {1, 2, 3} print(list1.intersection(list2)

python基础-----集合与函数

字符串 数字 字典 列表 元组 可变不可变: 1.可变:列表.字典 2.不可变:字符串.数字.元组 访问顺序: 1.直接访问:数字 2.顺序访问:字符串,列表,元组 3.映射:字典 存放元素个数: 容器类型:列表,元组,字典 原子:数字,字符串 #集合 1.不同元素组成 2.无序 3.集合中元素必须是不可变类型(字符串,数字,元组) #添加    add #  随机删  pop #   指定删    remove           (删除元素不产在会报错) #discard    (删除元素不

python的集合、递归、函数和模块

一.python的集合 集合具有天生去重和无序的特性,也由于无序,所以集合无法通过下标取值 新建一个集合的方法是: s = set()   #空集合 s2 = {'1','2','3'} 添加元素的方法为: s.add('1') 删除元素的方法为: s.remove('1') s.pop()    #随机删除一个值 s1 = {1,2,3} s2 = {3,4,5} 交集: s2.intersection(s2) s2 & s1 并集: s2.union(s1) s2 | s1 差集(取s2里不

Python 多进程实战 & 回调函数理解与实战

这篇博文主要讲下笔者在工作中Python多进程的实战运用和回调函数的理解和运用. 多进程实战 实战一.批量文件下载 从一个文件中按行读取 url ,根据 url 下载文件到指定位置,用多进程实现. #!/usr/local/python27/bin/python2.7 from multiprocessing import Process,Pool import os,time,random,sys import urllib # 文件下载函数 def filedown(url,file):  

文成小盆友python-num3 集合,函数,-- 部分内置函数

本接主要内容: set -- 集合数据类型 函数 自定义函数 部分内置函数 一.set 集合数据类型 set集合,是一个无序且不重复的元素集合 集合基本特性 无序 不重复 创建集合 #!/bin/env python s1 = {"1","2","3","4"} ##或者 s2 = set() set 提供的功能 1 class set(object): 2 """ 3 set() -> n

Python基础之内置函数和递归

本文和大家分享的主要是python中内置函数和递归相关内容,一起来看看吧,希望对大家学习python有所帮助. 一.内置函数 下面简单介绍几个: 1.abs() 求绝对值 2.all() 如果 iterable 的所有元素都为真(或者如果可迭代为空),则返回  True 3.any() 如果 iterable 的任何元素为真,则返回  True .如果iterable为空,则返回  False 4.callable() 如果  object 参数出现可调,则返回  True ,否则返回  Fal

Python:集合操作总结

集合是一组无序排列的不重复元素集 [注]:集合的最大作用是对一个序列进行去重操作 一.集合的分类 在Python中集合分为两类,为可变集合(set)和不可变集合(frozenset).对于可变集合(set)是允许添加和删除元素的:而对于不可变集合(frozenset)则不允许对集合进行添加和删除操作. 二.集合的创建 与列表([]).元组(())和字典({})不同,集合的创建没有特别的语法格式,因此如果想要创建集合就必须调用创建集合所需的工厂函数:set()和frozenset()  [注]:这