首页 > 编程语言 >Python-09_01函数参数的传递

Python-09_01函数参数的传递

时间:2022-08-15 19:25:13浏览次数:67  
标签:fun Python 09 print 函数参数 num 类型 variable lista

参数传递:

在Python中,类型属于对象,变量是没有类型的:如Str = ‘hello’;Str = 50,在以上代码中,hello是string类型的,50是整型,而变量Str是没有类型的,它仅仅是一个对象的引用(指针),可以指向各种类型对象。

Python函数参数的传递:

不可变类型:整数、字符串、元组。如fun(num),传递的只是num值,没有影响对象本身。如果在fun(num)内部修改num的值,只是修改了另个一复制的对象,不会影响num本身。

可变类型:列表,字典。如fun(list),则是将lista真正的传过去,修改后fun外部的lista也会受影响。

 1 #函数参数传递
 2 # 2022.08.13周六PM16:50 天气热
 3 #不可变类型:整数、字符串、元组。如fun(num),传递的只是num的值,没有影响num对象本身。如果在fun(num)内部修改num的值,只是修改另一个复制的对象,不会影响num本身。
 4 #可变类型:列表,字典。如fun(lista),则是将lista真正的传过去,修改后fun外部的lista也会受影响,如下例:
 5 a = 10
 6 b = 'hello'
 7 c = (1,2,3)
 8 
 9 def add1(variable):
10     variable = variable + 10
11     print(variable)
12 
13 add1(a)                            #不可变类型
14 print(a)
15 
16 def add2(variable):
17     variable = variable + 'aaa'
18     print(variable)
19 add2(b)                           #不可变类型
20 print(b)
21 
22 def add3(variable):
23     variable = (1,2)                #variable.append(5)会报错,元组是没有append方法的
24     print(variable)
25 add3(c)                             #不可变类型
26 print(c)
27 
28 
29 #可变类型:列表,字典。如fun(lista),则是将lista真正的传过去,修改后fun外部的lista也会受影响,如下例:
30 lista = [1,2,3,4]
31 dicta = {'a':1,'b':2,'c':3}
32 print(id(lista))                     #求变量的地址,可以用id()方法将其id打印出来查看
33 def add4(listb):
34     listb.append(5)
35     print(id(listb))                 #地址没有变,说明值确实已经被修改了
36     print(listb)
37 add4(lista)
38 print(lista)

 

标签:fun,Python,09,print,函数参数,num,类型,variable,lista
From: https://www.cnblogs.com/yyym/p/16589376.html

相关文章

  • Python-09_02函数参数类型
    Python函数参数类型:必备参数、关键字参数、缺省参数、任意个数参数。必备参数须以正确的顺序传入函数,也叫做位置参数,即参数是通过位置进行匹配的,从左到右,依次进行匹配,这个......
  • Python-08while循环
    while循环Python提供了While和for循环,(在Python中没有do..while循环)如果使用 while 循环,给定的判断条件为true时执循环体,否则退出循环体。1#在Python中没有do...whi......
  • Python-09函数基础、形参、实参
    Python3函数函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print......
  • python在导入模块时,即import时究竟有哪些动作?
    python在导入模块时,即import时究竟有哪些动作?在python中,导入并非只是把一个文本文件插入到另一个文件。导入其实是运行时的运算,程序第一次导入指定文件时,会执行以下三个步......
  • python 中实现按照 fasta文件的scaffold进行排序
     001、方法1root@PC1:/home/test#lsa.fastatest.pyroot@PC1:/home/test#cattest.py##测试程序#!/usr/bin/pythonin_file=open("a......
  • python 中实现将fasta中DNA序列转换为RNA
     001、root@PC1:/home/test#lsa.fastatest.pyroot@PC1:/home/test#cattest.py##测试程序#!/usr/bin/pythonin_file=open("a.fasta","r")di......
  • python 中实现将fasta文件的碱基序列以小写字母的形式输出
     001、root@PC1:/home/test#lsa.fastatest.pyroot@PC1:/home/test#cattest.py##测试程序#!/usr/bin/pythonin_file=open("a.f......
  • Python-05输入输出
    Python输入语句:     在Python3.x中raw_input()和input()进行了整合,去除raw_input(),仅仅保留了Input()函数,其接收任意输入,将所有输入默认为字符串处理,并返回字符......
  • python 中输出fasta文件的反向序列
     001、root@PC1:/home/test#lsa.fastatest.pyroot@PC1:/home/test#cattest.py##测试程序#1/usr/bin/pythonin_file=open("a.fasta","r")......
  • Python-04运算符
    Python运算符运算符用于对变量和值执行操作。Python在以下组中划分运算符:算术运算符赋值运算符比较运算符逻辑运算符身份运算符成员运算符位运算符1#运算......