小甲鱼~课后习题

  1. 如果我需要在一个字符串中嵌入一个双引号,正确的做法是?
    有两个选择:可以利用反斜杠(\)对双引号转义:",或者用单引号引起这个字符串。例如:’ I l"o"ve fishc.com '。

  2. 什么是BIF?
    是Bulit-in Functions,内置函数。为了方便程序员快速编写脚本,python提供了大量内置函数。
    输入 dir(__builtins__) 可以看到 Python 提供的内置方法列表(注意,builtins 前后是两个下划线)也可以用help()方法来查询某个BIF的功能

  3. 如果循环无限循环下去,程序崩溃,则按下快捷键 CTRL + C(强制结束)。造成死循环得原因是while后面的条件永远为真,只有这些会被看成假(冒号,括号里面什么也没有,空格都没有):False,none,0,’’,“”,(),{}, []

  4. 请写出与 10 < cost < 50 等价的表达式 :
    (10 < cost) and (cost < 50)

  5. 一行过长的语句可以使用反斜杠(\)或者括号分解成几行

3 > 4 and \
1 < 2
或者
(3 > 4 and
1 < 2 )

  1. s为字符串
    s.isalnum():所有字符都为数字或字母,则为真,否则为假
    s.isalpha():所有字符都为字母,则为真,否则为假
    s.isdigit():所有字符都为数字,则为真,否则为假
    s.islower()::所有字符都为小写,则为真,否则为假
    s.issupper()::所有字符都为大写,则为真,否则为假
    s.istitle()::所有字符首字母都为大写,则为真,否则为假
    s.isspace():所有字符都是空白字符,则为真
  2. 使用 int() 将小数转换为整数,结果是向上取整还是向下取整呢?
    小数取整会采用比较暴力的截断方式,即向下取整。(注:5.5向上取整为6,向下取整为5)
    如果想要按照四舍五入法取整,则可以加0.5,eg:int(6.5+0.5) = 7,int(6.4+0.5)=6
  3. type(),isinstance()都是返回一个变量的类型
    eg:
>>> a = 5
> isinstance(a,int) 
 True 
>>>type(a)
<class 'int'>

建议使用 isinstance(),因为它的返回结果比较直接
另外 type() 其实并没有你想象的那么简单
  1. assert作用
    这个关键字成为‘断言’,当这个关键字后面的条件为假时,程序自动崩溃并抛出AssertionError异常。这在测试程序时非常好用,相当于在程序中置入检查点,只有为真时,程序才能通过
  2. 将x,y,z值迅速进行交换:x,y,z=z,y,x
  3. 成员资格运算符:in 。用于判断一个值是否在序列中,如果在,则返回True
  4. 下面循环会打印多少次
for i in range(0,10,2):
	print('hello')

会打印5次。因为从0开始,10结束(不包括10),步进为2
13. append和extend都是向列表的末尾增加元素,它们的区别?
append是将参数作为一个列表去扩展列表末尾
extend是将参数作为一个元素增加到列表末尾
还有一种insert方法,将元素插入到
clear清空列表操作,列表还存在,只不过为空

>>> name = ['h','e','l']
    name.append(['l','o'])
>>> name
['h', 'e', 'l', ['l', 'o']]

>>> name = ['h','e','l']
>>> name.extend(['l','o'])
>>> name
['h', 'e', 'l', 'l', 'o']

>>> name.insert(2,'好')
>>> name
['h', 'e', '好', 'l', 'l', 'o']
  1. 列表推导式或列表解析
    用于动态的创建列表
    语法:[有关a的表达式 for a in b]
>>> [i*i for i in range(10)]
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

>>> list1=[(x,y) for x in range(10) for y in range(10) if x%2==0 and y%2!=0]
>>> list1
[(0, 1), (0, 3), (0, 5), (0, 7), (0, 9), (2, 1), (2, 3), (2, 5), (2, 7), (2, 9), (4, 1), (4, 3), (4, 5), (4, 7), (4, 9), (6, 1), (6, 3), (6, 5), (6, 7), (6, 9), (8, 1), (8, 3), (8, 5), (8, 7), (8, 9)]
  1. 列表和元组区别
    列表:一个大仓库,可随时往里面添加删除东西
    元组:封闭的列表,一旦定义,就不可改变
  2. x,y,z=1,2,3,其中x,y,z是元组吗?
    所有的多对象的,逗号分隔的,没有明确用符号定义的这些集合都默认是元组
  3. python有列表推导式,没有元组推导式,但是tuple1=(x*x for x in range(10))没有报错,是因为误打误撞创建了一个创造器
>>> tuple1=(x*x for x in range(10)) 
#注意最外边是圆括号,如果是方括号则变成了列表
>>> type(tuple1)
<class 'generator'>

18.在这里插入图片描述
19.format方法

>>> "{a} love {b}.{c}".format(a="i",b="you",c="java")
'i love you.java'  #必须要标a=“i”这些
>>> "{0} love {1}.{2}".format("i","you","java")
'i love you.java'
>>> "{2} love {0}.{2}".format("i","you","java")
'java love i.java'
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值