Python错题合集一

举报
努力变强的小C 发表于 2022/09/21 11:08:29 2022/09/21
【摘要】 Python错题合集一

目录


题目一:

题目要求

题目答案

我的分析

题目二

题目要求

题目答案

我的分析

Python global使用教程

Python global解决变量重名



题目一:

题目要求

以下代码的输出结果是()。

print('{:*^10.4}'.format('Flower'))

A.Flow

B.Flowe

C.***Flow***

D.Flower

题目答案

C  

我的分析

输出格式符号{:*^10.4}中,*表示空格处用*补齐,^表示要显示的字符要取中,10表示显示的总长度是10个字符,.4表示字符串的最大输出长度。所以尽管变量的长度超出了4,但只有4个字符被显示出来,所以如果print('{:*^10.4}'.format('Flower'))程序就会自动将字符串裁剪为默认保存前四个

题目二

题目要求

请问python全局变量和局部变量可以同名吗?

题目答案

可以

我的分析

Python global使用教程

如果局部变量隐藏了全局变量,那么当我们再次访问全局变量时,程序会报错,会说找不到该变量,因为,该全局变量被局部变量隐藏了。

来看一个栗子:

varname = value

def func():

print(varname)

varname = value2

func()

print(varname)

首先,我们定义了一个全局变量 varname,接着,我们定义了一个函数 func,同时,在函数 func 里面,我们首先打印变量 varname,接着再次给变量 varname 赋值。最后,我们调用 func 函数,并使用 print 打印全局变量 varname 的值,此时程序报错。因为,我们在函数 func 里面定义的局部变量 varname 隐藏了全局变量 varname。因此,在函数 func 里面打印的 varname 被当成了局部变量

还有一个问题就是我们如何解决,局部变量和全局变量的重名问题呢?

Python global解决变量重名

当局部变量与全局变量重名时,我们可以在函数内部使用 global 关键字来说明,我们在函数内部使用的是全局变量,而不是再次定义一个局部变量。所以说Python中有很多小细节值得去推敲的

题目三

题目要求

30、以下代码不可能输出的结果()。

from random import *

print(round(random(),2))

A.0.12

B.1.31

C.0.01

D.0.66


题目答案

B

我的分析

 本题考查的是random库和round内置函数的使用方法,

下面来了解一下这两种方法的含义分别是什么吧

random()函数产生的随机数范围在[0,1),

round的语法

round(number,num_digits)


二、参数

number:需要四舍五入的数

digits:需要小数点后保留的位数;

三、返回值

指定的位数大于 0,返回四舍五入到指定的小数位;

指定的位数等于 0,返回四舍五入到最接近的整数,保留整数部分;

指定的位数小于 0,对整数部分进行四舍五入,返回的结果是浮点数。

本道题目中的要求输出随机数范围在[0,1)的任意四舍五入后保留两位小数的小数,是所以不可能输出1.31,所以本题选B。

本次的内容就分享到这

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。