Say、Tell、Speak 和 Talk:没人讲清楚的那点区别
四个动词,一个意思,四套不同的语法。“he said me”为什么错,为什么是 tell a lie 却是 say a word,以及那些只能靠记的固定搭配。

1问题出在语法,不在词义
多数词汇混淆都是词义问题:两个词意思接近,你得学会那点细微差别。这一组不是。say、tell、speak、talk 的意思大体相同,难点完全在结构上。
“He said me the truth”之所以错,不是因为 said 和 told 意思不同,而是因为 say 不能直接带人作宾语。意思一清二楚,只是这个句子没有按英语的搭法搭起来。这也是为什么在这里从母语直译一定失败——意思传过来了,结构没有。
把这四个词当作语法模式来学,而不是当作词汇。一旦你知道每个动词后面允许跟什么,选哪个就自动有了答案。
- say + something (to someone) — He said hello. She said something to me.
- tell + someone (+ something) — He told me. She told me the news.
- speak (to someone) (about something) — I spoke to her about it.
- talk (to someone) (about something) — We talked about the plan.
Tip: 如果你只改一件事,就改“人”的位置。tell 直接带人;say 要带人得先加 to。光这一条就能消掉这一领域里的大部分错误。
2Tell 需要一个人,say 不需要
这是整个话题的核心,值得说得直白一点,因为几乎所有错误都出在这里。
TELL 后面紧跟一个人,SAY 则不允许。“He told me”对,“He said me”不对。如果你想在 say 后面提到人,就得加 to:“He said something to me.”
- He told me the answer. — correct, person straight after tell
- He said me the answer. — wrong
- He said the answer to me. — correct, to before the person
- She told that she was tired. — wrong, tell needs a person
- She said that she was tired. — correct
- She told me that she was tired. — correct
注意第二组。“She told that she was tired”出错,不是因为 told 用错了词,而是因为 tell 没有它的人。tell 几乎总是需要知道“告诉了谁”;而 say 除非加 to,否则几乎不提这个人。
确实有少数固定说法里 tell 后面不跟人——tell the truth、tell a lie、tell a story、tell the time、tell the difference。它们是固定搭配,第七节会讲,并不动摇一般用法的规则。
Tip: 一个好用的记忆钩子:你 TELL 一个人,你 SAY 一件事。后面紧跟的是人,就用 tell。
3Say 说什么,tell 告诉谁:一句话的规则
上面的规则可以压缩成一句短到能在说话中途想起来的话——而这正是开口时真正需要的。
Say WHAT,tell WHOM。下一个词是“事”就用 say,是“人”就用 tell。
拿几个句子试一下就知道它成立:say hello(事)、tell me(人)、say something(事)、tell your brother(人)、say a few words(事)、tell the children(人)。这个测试用不了一秒钟,对日常用法很可靠。
- Can you say that again? — thing follows
- Can you tell me again? — person follows
- He said nothing. — thing
- He told nobody. — person
- Say your name. — thing
- Tell them your name. — person, then thing
注意 tell 可以两个都带:tell + 人 + 事。“She told me the story.”say 做不到这一点——“She said me the story”根本不成立。tell 是那个能容纳两个宾语的动词。
Tip: 说话时一旦感觉自己要脱口而出“said me”,补救办法要么是 told me,要么是 said to me。两个都对,哪个先冒出来就用哪个。
4Speak 和 talk:几乎可以互换,但并不完全
这两个词比 say 和 tell 宽容得多。在多数句子里互换都不算错,区别在语体而不在语法。
talk 是日常口语的选择,暗示双向的交流。speak 稍正式一些,可以暗示单向,或者场合更严肃。“Can I talk to you?”是朋友之间的普通请求;“Can I speak to you?”是你对上司说的话,或者打电话时说的。
- We talked for hours. — casual conversation
- She spoke at the conference. — formal, one direction
- Can I speak to Mr Miller, please? — telephone standard
- I need to talk to you about something. — everyday
- He speaks very quietly. — manner of speaking
- Stop talking! — never "stop speaking" in a classroom
两者接人都用 to,接话题都用 about:talk to someone about something、speak to someone about something。正是这种对称让它们容易互换。
两者都不能直接带人作宾语。“I talked him”和“I spoke him”都是错的,必须加 to。只有 tell 享有这个特权。
Tip: 如果拿不准哪个更合适:对话中用 talk 更保险,书面语和电话里用 speak 更保险。
5Speak 用于语言和正式场合
speak 有几项 talk 干不了的活,而它们对语言学习者来说天天用得上。
I speak English. She speaks four languages. Do you speak Arabic? 绝不能说“I talk English”——这是学习者最容易被一眼认出的错误之一,而且它出现在多数对话的第一句里,值得尽早改掉。
She spoke at the ceremony. The president will speak tonight. Speaking of which… 这里的 speak 带着 talk 没有的分量。“The president will talk tonight”不算错,但听起来明显随意。
“Can I speak to Emma?”是标准说法。当对方要找的正是你时,单说一句“Speaking”就是接话的方式。用 talk 也说得通,但在这套固定对答里显得不够地道。
- speak your mind — say what you really think
- speak up — talk louder, or state an opinion
- so to speak — a way of softening a metaphor
- generally speaking — a common opener in writing
- talk sense / talk nonsense — fixed with talk, not speak
- talk shop — discuss work outside work
Tip: 语言、正式场合和电话用 speak,其余一律用 talk。这基本覆盖了你会遇到的所有真实情境。
6Say 的固定搭配
这几个动词的用法里,有相当一部分被锁在不讲规则的固定表达中。它们只能作为整体记下来。
- say hello / goodbye / good morning
- say yes / no
- say a word — He didn't say a word
- say something / nothing / anything
- say a prayer
- say sorry
- say please and thank you
- say what you mean
- needless to say
- having said that — a very common linking phrase
- that is to say — in other words
- it goes without saying
注意这些后面跟的都是“事”而不是“人”,与 say what 的规则一致。这些固定搭配不是例外,而是同一条规则套在固定内容上的结果。
say sorry 和 say goodbye 会绊倒很多语言的使用者,他们会下意识去用 tell。“He told me sorry”是错的,应该说“he said sorry”或“he apologised”。
Tip: having said that 值得主动去用,而不只是被动认得。它是英语口语里最有用的语篇标记之一,用它引出一个转折的观点,会让你听起来明显更流利。
7Tell 的固定搭配
tell 有自己的一套固定说法,而这里正是“后面接人”的规则看起来被打破的地方——所以值得明确列出来。
- tell the truth — He never tells the truth
- tell a lie — Don't tell lies
- tell a story / a joke
- tell the time — Can he tell the time yet?
- tell the difference — I can't tell the difference
- tell someone off — scold them
- tell someone apart — distinguish two people
- to tell you the truth — a spoken filler
- I told you so
- you never can tell — you never know
在 tell the truth、tell a lie 和 tell a story 里,宾语是事而不是人,这与主规则相抵触。把它们当作背下来的整体。除了这份清单之外,tell 依然需要它的人。
这里有两条的含义与“说话”无关。tell the difference 和 you never can tell 都表示“分辨”或“知道”,完全不涉及开口。“I can't tell the difference between them”跟说话没有任何关系。
不要把这个模式推广开。“Tell an information”和“tell a news”都是错的;information 和 news 是不可数名词,要用 give 或 tell someone:give me some information、tell me the news。
Tip: to tell you the truth 和 having said that 是第六、七两节里价值最高的两个短语。两个在口语中都极其常见,用起来也都不难。
8介词:to、with、about 和 of
动词选对之后,紧接着最容易出错的地方就是后面的介词。
- say something TO someone — He said it to me
- tell someone — no preposition at all
- speak TO someone — the standard in British English
- speak WITH someone — more common in American English, slightly more mutual
- talk TO someone — the everyday form
- talk WITH someone — suggests a two-way discussion
- talk ABOUT something — the topic
- speak ABOUT something — the topic, more formal
- tell someone ABOUT something — She told me about the trip
- speak OF someone — formal, often in fixed phrases
to 和 with 的区别值得说一句。“Talk to”可以暗示一方说得更多,而“talk with”暗示真正的双向交流。实际使用中,英国人两种情形都用 to,美国人用 with 更自由。两者都不算错。
tell 后面接人时不用任何介词。“He told to me”是极常见的错误,出自那些正确学会了“said to me”、然后把它过度套用的学习者。是 tell me,不是 tell to me。
Tip: 这里有个有用的不对称:say 和 tell 的区别在于带不带 to,而 speak 和 talk 都带 to。只要记住 tell 是那个特殊的,大部分介词错误就消失了。
9在间接引语里
转述别人说的话,是这几个动词出现最密集的地方,而 say 和 tell 之间的取舍遵循的还是你已经知道的那条规则。
在间接引语里,不提人就用 said (that),提人就用 told someone (that)。“He said that he was busy”和“He told me that he was busy”都对;“He told that he was busy”和“He said me that he was busy”都错。
- She said she would call. — no person mentioned
- She told me she would call. — person mentioned
- He said to me that it was fine. — correct but slightly formal
- They told us the meeting was cancelled. — natural
- They said us the meeting was cancelled. — wrong
表达指令和请求时,tell 后面接不定式:“She told me to wait.”say 做不到——“She said me to wait”是错的,“She said to wait”则很别扭。表达命令,tell someone to do something 是标准结构;更客气的替代是 ask someone to do something。
say 和 tell 都不能用来转述问句,要用 ask:“He asked me where I lived”,而不是“He told me where I lived”——除非他是在回答而不是在提问。
Tip: 间接引语是这些错误在考试中真正扣分的地方,因为句子更长,人很容易被漏掉。如果你在备考雅思或 CELPIP 写作,请专门练 tell + 人 + that。
10为什么有些母语的人觉得更难
你会不会觉得这一块难,很大程度上可以从你的母语预测出来;而知道原因,就更容易抓住自己的错误。
波斯语、土耳其语、印地语、乌尔都语等许多语言,用一个动词覆盖了英语分成两个的地方。波斯语的 گفتن 两者通吃,所以“او به من گفت”会自然地映射成“he said me”——母语里没有任何信号提示你少了什么。这是全世界范围内这个错误最大的来源。
阿拉伯语、俄语、德语等语言用格或小品词来标记接受者,而不是靠语序,所以“人”可以放在任何位置。英语靠的是位置:紧跟在 tell 后面,或者跟在 say 的 to 后面。信息是同一份,机制不一样。
法语的 parler、西班牙语的 hablar、德语的 sprechen 都同时覆盖两者,所以这些语言的使用者往往到处用 speak。好消息是,这样造出的句子只是偏正式,而不是错的,代价远小于 say 和 tell 的混用。
如果你的母语用一个动词覆盖 say 和 tell,那就默认自己正在犯这个错误,直到你专门练过为止。它能一路撑到高级水平,恰恰是因为它从不妨碍别人听懂。
Tip: 最快的解决办法是替换操练,而不是背规则:大声说十个以“She told me…”开头的句子,再说十个以“She said…”开头的。你训练的是语序,而语序只对开口说话有反应。
11三十个句子,逐句改错
先遮住右边,自己改一遍再看答案。这些是真实学习者英语中最常出现的错误。
- He said me the truth → He told me the truth
- She told that she was late → She said that she was late
- He told to me about it → He told me about it
- Can you say me your name? → Can you tell me your name?
- I talked him yesterday → I talked to him yesterday
- I speak English and French → correct as written
- I talk English → I speak English
- She said me to wait → She told me to wait
- He didn't tell anything → He didn't say anything
- Tell me the difference → correct as written
- He said a lie → He told a lie
- She told hello → She said hello
- Can I talk to Mr Miller, please? (on the phone) → Can I speak to Mr Miller, please?
- He told me sorry → He said sorry
- They said us the news → They told us the news
- Let me say you something → Let me tell you something
- I want to speak you → I want to speak to you
- She told a joke to the class → correct as written
- He said nothing to nobody → He didn't say anything to anyone
- Tell an information about the course → Give me some information about the course
- My son can't say the time yet → My son can't tell the time yet
- I spoke with her about the report → correct as written
- He said me that he would come → He told me that he would come
- She talked about me the problem → She talked to me about the problem
- Please say the truth → Please tell the truth
- He told me off for being late → correct as written
- Generally speaking, it works well → correct as written
- I can't say the twins apart → I can't tell the twins apart
- She said to the audience for an hour → She spoke to the audience for an hour
- To say you the truth, I forgot → To tell you the truth, I forgot
Tip: 其中有五句本来就是对的。如果你把它们改了,说明你在过度纠正——规则你有了,语感还没有。
12用真实对话把它改过来
这条规则不是靠读能装进脑子里的。它是语序,而语序活在“产出”里,不在“看懂”里。
你需要的是对话——访谈、情景喜剧、播客里的闲聊,任何两个人来回说话的内容。间接引语和这四个动词在对话里频繁出现,在旁白里几乎不出现,所以选材要相应地挑。
听力还会顺带把搭配送给你。你会把“tell you the truth”“having said that”“speaking of which”整块吸收进来,而这正是母语者存储它们的方式。作为整体学会的短语,永远不需要在压力下临时拼装。
- 找一段对话,而不是独白——访谈和情景喜剧效果最好
- 每听到一次 tell,记下被告知的是谁;每听到一次 say,记下有没有出现 to
- 把固定搭配整块收集起来,绝不要拆成单词
- 保存完整的句子,因为要学的模式就是动词周围的语序
- 用一次 told me 和一次 said,把其中一段对话大声复述出来
Tip: FlexiLingo 为 YouTube 和播客加上可交互字幕,点任意单词就能看到词义和 CEFR 等级,并连同它所在的句子一起保存——这在这里必不可少,因为孤零零的动词完全教不了你它后面该跟什么。
常见问题
区别在语法,不在词义。tell 后面直接跟人:“He told me.”say 不允许——想提到人就得加 to:“He said something to me.”一句话概括:say what, tell whom。下一个词是事就用 say,是人就用 tell。
因为 say 不能直接带人作宾语。意思一清二楚,这正是这个错误能存活多年的原因,但英语不这么搭句子。改成“he told me”或“he said it to me”都可以。
差别很小,多数句子里可以互换。talk 更随意,暗示双向交流;speak 稍正式,是语言的标准用法(“I speak English”,绝不能说“I talk English”)、正式场合的用法,也是打电话时的用法(“Can I speak to Emma?”)。两者都不能直接带人,都需要 to。
两个都对。英式英语偏好 speak to;美式英语用 speak with 更自由,它可以暗示交流更双向一些。两者都不会被判错,用顺口的那个就行。
它属于一小组 tell 后面接事的固定搭配:tell the truth、tell a lie、tell a story、tell a joke、tell the time、tell the difference。把它们当作背下来的整体。这份清单之外,tell 依然需要它的人。
几乎可以肯定是因为你的母语用一个动词覆盖了英语的两个。波斯语、土耳其语、印地语等许多语言都是如此,所以“he said me”听着很自然,母语里也没有任何东西提醒你。懂规则帮不上忙,因为这个错误发生在语速之下。请开口操练:十个以“She told me…”开头的句子,十个以“She said…”开头的。