python 2017年12月七学习笔记

简介:

#小练习:
#使用可变参数的形式,将所有参数相乘,并将结果作为函数的返回值

def print_add(*args):
    resul = 1
    for i in args:
        resul *= i
    return resul

print print_add(1,3,4,5,6,7)

#按值传递的例子:

b =1
def print_sth(s):
    s=s+1
    return s

# print print_sth(b)
# print "b:",b

#按引用传递的例子:
a = [1]
print "a: ",a

def print_str(s):
    s.append(2)
    return
# print print_str(a)
# print a

#小练习:写一个而函数,一个字符串作为参数,函数需要将此字符串的偶数位字母做一个返回
def print_even(s):
    s_list = []
    for i in range(len(s)):
        if i % 2 == 0:
           s_list.append(s[i])
    return "".join(s_list)

# s = "abcdef"
# print print_even(s)

def add(x,y):
    try:
        if isinstance(x,y(int,long,float)):
            return x + y
        else:
            return None
    except:
        print "你传入的类型不一致,不能两个数增加"

# a = 10
# b = "ddd"
# print add(1,b)

#一个list 包含10个数字,然后生成新的List,要求,新的list里面的数都比之前的数多1
def print_list():
    list1 = range(10)
    list2 = []

    for i in list1:
        list2.append( i + 1)

    print list1
    print list2

精简版:

传值:被调函数局部变量改变不会影响主调函数局部变量

传址:被调函数局部变量改变会影响主调函数局部变量

Python参数传递方式:传递对象引用(传值和传址的混合方式),如果是数字,字符串,元组则传值;如果是列表,字典则传址;

copy使用场景:列表或字典,且内部元素为数字,字符串或元组

deepcopy使用场景:列表或字典,且内部元素包含列表或字典










本文转自 知止内明 51CTO博客,原文链接:http://blog.51cto.com/357712148/2048529,如需转载请自行联系原作者
目录
相关文章
|
20天前
|
存储 C语言 Python
【Python】学习笔记day3
【Python】学习笔记day3
26 1
|
4月前
|
SQL 分布式计算 大数据
Python+大数据学习笔记(一)
Python+大数据学习笔记(一)
43 0
|
2天前
|
Python
基于Django的Python应用—学习笔记—功能完善
基于Django的Python应用—学习笔记—功能完善
|
20天前
|
存储 C语言 芯片
【Python】学习笔记day1
【Python】学习笔记day1
33 1
|
27天前
|
算法 搜索推荐 测试技术
python排序算法及优化学习笔记1
python实现的简单的排序算法,以及算法优化,学习笔记1
33 1
|
6月前
|
jenkins 持续交付 开发工具
Python学习笔记_Devops_Day05
Python学习笔记_Devops_Day05
|
6月前
|
持续交付 开发工具 数据安全/隐私保护
Python学习笔记_Devops_Day04
Python学习笔记_Devops_Day04
|
6月前
|
JSON JavaScript 前端开发
Python学习笔记_Devops_Day02
Python学习笔记_Devops_Day02
|
6月前
|
SQL 关系型数据库 数据库
Python学习笔记_Day09
Python学习笔记_Day09
|
6月前
|
Python
Python学习笔记_Day08
Python学习笔记_Day08