Which 引导非限制性定语从句时,前面要加逗号,引导限制性定语从句时就不能加逗号。

Which的用法:

关系代词which的用法

在非限定性定语从句中,只宜用which, 不宜用that.

Beijing, which is the capital of China, is a very beautiful city.

在限定性定语从句中which和that在指代物的时候常常可以通用,但是有时只宜用which而不用that

i. 关系代词前面有介词的时候
This is the hotel in which you will stay.

ii. 如果有两个定语从句,其中的一句的关系词是that, 另一句宜用which.
Let me show you the novel that I borrowed from the library which was newly open to us.

关系代词与介词,关系代词的省略
关系代词和介词
介词放在关系代词的前面时,介词短语只能用which代物,和用whom代人
This is the hero of whom we are proud.

I want to find the very pen with which I wrote that letter.

当介词放在句子的末尾时,可用that/which代物,that/whom/who来作为介词的宾语,且这个做介词宾语的关系代词往往忽略
This is the hero that (who/whom/忽略) we are proud of.

见https://zhidao.baidu.com/question/876268744660488052.html

Which前加逗号与不加逗号有什么区别相关推荐

  1. Js事件绑定时,函数名加括号和不加括号有什么区别

    Js事件绑定时,函数名加括号和不加括号有什么区别以window.onload为列 大致可以理解为一:不加括号时:=指向函数,触发事件时触发函数.window.οnlοad=aa;aa为一个函数等价于w ...

  2. python中类的方法里面变量前加self与不加self的区别

    1.最近在执行一个UI自动化脚本登录网站时遇到一个很奇葩的问题:运行脚本后chromedriver会驱动浏览器打开网站执行脚本里面的一系列界面操作,操作完后浏览器自动关闭了(重点就在这里,我明明没有调 ...

  3. 声明double变量的时候,加d与不加d有什么区别

    privatedoublemoneycon=0.0d; privatedoublemoneycon2=0.0; 以上命名变量方式,一个加d,一个不加d,都能通过编译,这两个方法有什么区别, 反正两种方 ...

  4. 函数名前加static与不加static的区别

    函数名前有无static关键词修饰的区别 引入 static修饰特点 代码示例 代码1(对应第1点) 代码2(对应第2点) 代码3(对应第3点) 总结 引入 在定义函数时,前面有时会有static关键 ...

  5. Linux命令行参数前加杠-和不加杠的区别

    参数前"-"的表明后面的参数是字符形式. 参数前"–"的则表明后面的参数是单词形式. 参数前有横的是System V风格. 参数前没有横的是BSD风格.

  6. pyton中的self具体含义,加self与不加self有什么区别?

    类的定义: python使用class关键字来定义类, 创建类时: 1.1用变量形式表示的对象属性称为数据成员或成员 属性 1.2用函数形式表示的对象行为称为成员函数或成员 方法 成员属性和成员方法统 ...

  7. go get 加 -u 和不加 -u 参数的区别

    加上它可以利用网络来更新已有的代码包及其依赖包.如果已经下载过一个代码包,但是这个代码包又有更新了,那么这时候可以直接用 -u 标记来更新本地的对应的代码包.如果不加这个 -u 标记,执行 go ge ...

  8. scanf 输入加逗号(或者不加逗号)出现的异常及解决方案

    我们在写 C 语言代码通常 scanf 的格式控制部分都有两种习惯,加逗号与不加逗号,而这两种情况都会因为我们的不同输入习惯产生一定的问题,这里给出另一种方法. 1.不加逗号 1 #include&l ...

  9. js创建对象时,属性加引号与不加引号的区别(转)

    概要: 总结一下: 1. 命名要规范,变量名或者属性名不能用数字开头. 2. 可以加引号后使用,但调用要像数组中的属性那样调用  obj['888name'] 3. 符合规范的时候,加不加引号一样 以 ...

最新文章

  1. muduo之CountDownLatch.cc
  2. docker运行prometheus
  3. Codeforces 484B Maximum Value(高效+二分)
  4. (JAVA)reflect练习
  5. 史上最强虎妈:她是一介农妇,17岁嫁给50岁老头,23岁守寡,却养出35个博士...
  6. MySQL 批量插入数据,单次插入多少条数据效率最高
  7. Evernote是什么软件?印象笔记for mac V10.3.6官方版
  8. 为什么调用thread.Abort(),线程不会马上停止
  9. DOCTYPE用法详解
  10. mac 二进制安装mysql_教程方法;在mac下安装mysql二进制分发版的方法(不是dmg的)电脑技巧-琪琪词资源网...
  11. 微分方程数值解法(1)——常微分方程初值问题的数值解法
  12. pdf阅读,保存上次阅读位置
  13. linux公社_又一个Linux发行版宣告死亡!曾经是最好的桌面版BSD操作系统
  14. html内嵌式选择器,CSS样式 CSS选择器(Cascading Style Sheet)
  15. 【RQNOJ】460 诺诺的队列
  16. 2021年3月7日 蚂蚁金服的OceanBase Java后端开发实习面经(一面)
  17. 只有程序员才能看懂的16张高端漫画
  18. dmidecode查看内存信息,服务器序列号,内存插槽信息
  19. Button按钮的用法
  20. html打开浏览器协议,通过私有协议在Chrome浏览器网页中打开本地程序

热门文章

  1. mac安装配置android sdk
  2. unity2D:如何实现二段跳?
  3. C++设计模式——迭代器模式(iterator pattern)
  4. Python Pyqt5快速上手教程
  5. JDK1.9-网络编程入门
  6. 【UVM基础】uvm_driver 成员变量 req 释义
  7. oracle 支持64核,联想首发全球第一款64核工作站:搭AMD线程撕裂者PRO处理器
  8. java服务端实践:防止订单重复提交支付
  9. Servlet生命周期(代码+图示)
  10. 电商巨头将被“肢解”?独立站私域电商的时代即将到来!