Python 板


LINE

菜鸟我在学Python时,有个最大的疑惑就是: "为什麽有些函数需要有东西去接,有些不用?" 像是split函数,我学的时候是这样用的 str=str.split(' ') 这样才能把split後的字串存进去,而不能 str.split(' ') 就好。 但像是append函数, list.append(objctive) 就可以把物件加到list後面,而不用 list=list.append(objective) 。 我目前的理解是split函数有回传值,而append没有,所以一个要用=,一个不用, 不知这样是否正确? 另外,在学这些函数时有方法知道到底要不要用=吗? 还是只能看范例照做,或是看说明文件了? 谢谢大家~~ -- ╭─╮ ──╮ ╭─┤╭╮ ╭╭─╮╮ ╭ │ │ │ ││││││ ││││ ╰─╮ ╭─┼╮╰─┼╯││││○││││ │ │ ││ │ ││││ ││││ ╰─╯ ╰─╯╰──╯ ╰╰╯╰─╯╰╯╯ 傻瓜,我们都一样~~ ψsagwow --



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.113.119.153
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1514366821.A.326.html
1F:→ tedwu2001: python其实每个函式都有回传值,不写return也会隐式回 12/27 17:44
2F:→ tedwu2001: 传None,所以都可以assign给某变数 12/27 17:45
3F:→ tedwu2001: 你的疑惑比较是要去了解函式行为是否影响到receiver 12/27 17:46
4F:→ tedwu2001: 又再可能要去了解mutable还有immutable,有点复杂 12/27 17:47
5F:推 KyotoAnime: str = str.split() 问题是你不一定要用str接 可以a=st 12/27 17:47
6F:→ KyotoAnime: r.split() 这样str就还在 12/27 17:47
7F:→ tedwu2001: 不过学函式不就从看文件起?再不然就是看code这是肯定的 12/27 17:49
8F:推 KyotoAnime: 开发者考虑的也许是mutable的机率 像ls铁定更改自己 12/27 17:50
9F:→ KyotoAnime: 的机会高 12/27 17:50
10F:→ mikapauli: list就是要用来原地修改的,不然用tuple就好 12/27 18:19
11F:→ mikapauli: 一般来说函数就是要用回传值而非副作用运作, 12/27 18:21
12F:→ mikapauli: 只是这里你遇到的是方法 12/27 18:22
13F:推 vi000246: 这种情况要看方法的原始码 用久就熟悉了 12/27 18:23
14F:→ freeunixer: 因为字串不可变, list 可变.不可变的东西你当然要另传 12/27 19:20
15F:推 mantour: 你後面要用到回传值就去接,用不到就不用接 12/27 20:06
16F:推 mantour: 有副作用的函数比较常不用接是因为你只是要它的副作用 12/27 20:09
感谢各位的意见! ※ 编辑: sagwow (140.113.119.153), 12/27/2017 20:40:38
17F:推 Yshuan: 这应该是bound function跟unbound function 12/27 22:24
18F:推 bibo9901: 楼上不对, 两个都是bound喔 12/28 01:04
19F:→ uranusjr: 应该是因为原 po 用的诡异变数名才让他误会这是 bound 12/28 02:18
20F:→ uranusjr: unbound 问题吧, 我第一眼也以为他是直接呼叫 str.split 12/28 02:18
21F:→ uranusjr: 仔细看才确定原文想表达什麽问题 12/28 02:19
22F:推 vfgce: 这个只能背了,函数式程式设计的精神是不做inplace修改,但 12/28 07:55
23F:→ vfgce: 结果就是记忆体用量大增,而传统程式则是看你怎麽写,大部分 12/28 07:56
24F:→ vfgce: 情况下为了省记忆体,且确定资料不需保留後面使用,就会做 12/28 07:58
25F:→ vfgce: inplace条改,所以你只能记那些回传,那些是inplace修改... 12/28 07:59
26F:→ vfgce: R采用函数式程式设计,所以所有函数都回传不修改原值.所以 12/28 08:01
27F:→ vfgce: 不用特别记,传进去的东西不会被改. 而python就看程式怎麽写 12/28 08:02
28F:→ vfgce: 有些会修改传入资料,有些是不修改回传新的..只能用记的 12/28 08:03
29F:推 CaptainH: immutable 和 functional 没有必然关系 12/28 12:47
30F:→ CaptainH: 完全是设计者的考虑而已 12/28 12:48
31F:推 Sunal: 这跟functional有关?? 没吧 同楼上就是单纯设计时的考量 12/28 16:28
32F:→ Sunal: 就看怎麽用而已 12/28 16:29
33F:推 Sunal: 发现好像说一样的东西 当我没推文 12/28 16:32
34F:推 henry8168: 哭哭,我写程式写很久也是有这种疑问 O_Q 12/29 09:04
35F:推 clsmbstu: 我也是初学者 这超困扰我... 12/29 15:09
36F:→ clsmbstu: 而且有时候明明就只是想玩一下,不想修改原物件,反而还 12/29 15:13
37F:→ clsmbstu: 要多做一次.copy 12/29 15:13
38F:→ clsmbstu: function vs. method对我来说也是莫名其妙 QQ 12/29 15:16
39F:→ clsmbstu: R的method就会挂在function 再让function吃该data type 12/29 15:18
40F:→ clsmbstu: 不会有len(list) vs. list.sort() 却没有sort(list) 12/29 15:21
41F:推 Sunal: 有C的指标概念应该好理解吧 只是没接触过的话就是要硬记了 12/29 15:35
42F:→ bibo9901: 没有 sort() 但有 sorted 啊 12/29 15:43
43F:→ clsmbstu: 好吧 我举了不好的例子 那再举一个 XD 12/29 16:04
44F:→ clsmbstu: 是list.append(...) 却不是append(list, ...) 12/29 16:05
45F:→ tedwu2001: a = [1, 2, 3, 4] 12/29 16:14
46F:→ tedwu2001: append = list.append 12/29 16:14
47F:→ tedwu2001: append(a, 5) 12/29 16:15
48F:→ tedwu2001: print(a) 12/29 16:15
49F:→ tedwu2001: 我是来当新人杀手的 12/29 16:16
50F:→ clsmbstu: :O!!! 居然还可以这样... 12/29 21:17
51F:→ mikapauli: a.f(b) == type(a).f(a, b) 12/29 22:51
52F:推 Zundel: 函数还是方法 01/07 15:37
53F:推 smallreader: instance method第一个参数是self,所以可以这样写? 01/15 22:07







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:iOS站内搜寻

TOP