首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用exec进行变量赋值是否是pythonic式的?

使用exec进行变量赋值不是Pythonic式的。

Pythonic是指符合Python语言特性和风格的编程方式。在Python中,通常推荐使用直接赋值的方式来进行变量赋值,而不是使用exec函数。

exec函数是Python的内置函数,用于执行字符串形式的代码。虽然exec函数可以实现动态执行代码的功能,但它的使用会增加代码的复杂性和不可读性,不利于代码的维护和调试。而且,使用exec函数进行变量赋值可能存在安全风险,因为它可以执行任意的Python代码。

相比之下,直接赋值的方式更加简洁、清晰和安全。例如,可以使用等号(=)将一个值赋给一个变量,或者使用解构赋值的方式将多个值赋给多个变量。

总结起来,使用exec进行变量赋值不符合Pythonic的编程风格,推荐使用直接赋值的方式来进行变量赋值。

相关搜索:使用环境变量进行路径导出是否是pythonic式的?什么是使用私有变量的Pythonic方法?使用exec和python赋值函数中的变量是否适合使用未赋值的变量?Pythonic式的方法,检查变量是否存在,如果存在,则将其与另一个变量进行比较在数学术语中使用变量自身值进行变量赋值的意义是什么?为什么Task.Run参数中使用的外部变量被认为是未赋值的?当我使用offer和poll进行访问时,LinkedList是否是线程安全的?如何使用带def的keras函数式api?获取错误"UnboundLocalError:赋值前引用的局部变量'layers‘“是否可以使用Rust的宏重复来检测表达式是否是可变变量?如何检查参数/变量是否可用于Groovy中的Jenkins“使用参数进行构建”是否可以使用级联来对变量的两个属性进行操作?callstack是一个描述如何处理函数的模型。对于变量赋值,if语句和循环是否有类似的模型?在我们可以使用column变量进行建模之前,列的方差是可以接受的吗?来自glmnet模型的原始尺度中的变量系数是否使用r中的插入符号进行训练?当使用返回值赋值的变量调用函数get时,C++返回值优化(RVO)是如何工作的?在tensorflow中排队时,使用来自多个线程的相同占位符变量是否是竞争条件?是否有一种方法可以使用shinyWidgets包中的pickerInput函数对变量进行分组?您是否可以使用libtorrent库进行基本的主线分布式哈希表查询,如find_node和ping这个模板函数是如何工作的?它检查运行时是否可以进行类型转换,而不使用强制转换
相关搜索:
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Python(一)让你代码更加pythonic

pythonic代码往往更加简洁、优美和高效,不信你接着往下瞧: 比如,交换两个变量值,通常做法 ? 而pythonic写法只需要一行,简单高效: ? 这样例子还有很多,本文将一一罗列。...在python语言中,任意对象都可以直接进行真值测试。其中,python语言真值表如下: ? ? 字符串反转 ? ? 字符串列表拼接 ? ? 列表推导 ? ?...如果字典中不存在该key,则将key赋值为default。这样就省去了写if…else…繁琐。 ? ? zip:配对两个数组 zip方法返回一个元组,将两个数组中值一一配对。 ? ?...for...else...语句 for...else...语句中else可以用来处理没有从for循环中断情况。这样,就不用额外再设置一个状态变量来检查是否从for循环中断,代码变得简洁。 ?...文件打开和关闭 使用with方法,Python将自动管理文件流打开与关闭,无需手动操作。 ? ? 怎么样,pythonic写法是不是很简练、优美!

56720

代码又被喷?8招让你代码更Pythonic

变量交换 Pythonic写法 普通写法 循环遍历区间元素 在Python2中,有range和xrange2种写法,xrange生成器写法,更节省内存。...如何你还在使用Python2,建议用xrange代替range Java写法 生成器扩展 索引 Pythonic写法 普通写法 显然,Pythonic写法更加直观,优雅。...Python将自动管理文件流打开与关闭,无需手动操作 列表操作 Pythonic写法 普通写法 list也可以用pop(0)来删除第一个元素,但是list在内存中顺序存储,删除第一个元素,会导致之后所有元素都会前移...开头如果有大量删除和插入操作,避免使用list 解构赋值 Pythonic写法 字典也类似,在Python2中,字典items方法将返回列表,当字典比较大时,这样会很耗内存。...如果在使用Python2,请用iteritems代替items 推导 Pythonic写法 普通写法 更多有关生成器与推导写法,见循环与推导 作者:呆兔兔 来源:http://imtuzi.com

89160
  • 优雅你Python代码15个tips

    在 Python 社区,程序员还创造了一个新词 Pythonic 来评价代码是否符合 Python 风格,并以写出 Pythonic 风格代码而自豪。...笔者想表达,通过熟悉 Python 语言一些基本特性,加以熟练应用,你也可以写出很 Pythonic 代码! 话不多说,本文通过15个具体例子,带你领略 Python 简洁和优雅。...1、为多个变量赋值 ### NP: a = 2 b = 5 c = 12 ### P: a,b,c = 2,5,12 2、变量值互换 a = 50 b = 25 ### NP: temp = a a...= b b = temp ### P: a,b = b,a 上面的例子通过了元组pack和unpack完成了对a,b互换,避免了使用临时变量temp,而且只用了一行代码。...,赋值给不同变量 lst = ['jack', 18, 'Python', 'Good'] ### NP: name = lst[0] age = lst[1] lang = lst[2] score

    52920

    让你Python代码更加Pythonic

    这就是著名“python之禅”,简言之,就是要写符合pythonic代码,简洁、优雅、可读性强。 下面选取了一些常见Python规范和代码风格,大家可以进行参考和学习。...命名 首先看一下变量命名规范(pep8)规范: 文件夹:包名,建议仅使用小写字母命名,不建议使用下划线。 模块: 小写或者小写加下划线连接,比如 module.py、db_convert.py等。...,同时给多个变量赋值 a,b,c = 2,5,12 3.合并字符串 传统字符串合并方法,由于字符串对象不可改变,每次修改会产生一个新对象,这种方法会消耗很多内存。...4.列表去重 使用集合唯一性,对列表进行去重 a = [1, 2, 3, 1, 2,3 , 1, 3, 2, 4, 1, 3, 4, 5, 6, 5, 4, 4, 3, 6] lst = list(set...解压列表/元组元素,赋值给不同变量 a, b, c = [1,2,3] print(a, b, c) 输出:1 2 3 函数中解包操作 在函数调用中,* 能够将元组或列表解包成不同参数。

    73820

    如何写出Pythonic代码

    要写出 Pythonic(优雅、地道、整洁)代码,还要平时多观察那些大牛代码,这里明哥收集了一些比较常见 Pythonic 写法,帮助你养成写优秀代码习惯。 01....真假判断 判断一个变量是否为真(假),新手习惯直接使用 == 与 True、False、None 进行对比 if attr == True: print('True!')...访问字典元素 当直接使用 [] 来访问字典里元素时,若key不存在,会抛异常,所以新会可能会先判断一下是否有这个 key,有再取之。...显代码 有时候出于需要,我们会使用一些特殊魔法来使代码适应更多场景不确定性。...三目运算 对于简单判断并赋值 age = 20 if age > 18: type = "adult" else: type = "teenager" 其实是可以使用三目运算,一行搞定

    53521

    18 种方法来优雅你 Python

    Python 讲求一个目标就是 Pythonic,很多情况下我们会追求 Python 代码更加优雅写法。...二,优雅你赋值语句 4,为多个变量赋值 平凡方法: 逐一赋值。 ? 优雅方法: 使用元组语法同时赋值。 ? 5,序列解包 平凡方法: 使用下标访问逐一赋值。 ? 优雅方法: 序列自动解包。 ?...6,对象方法嵌套 平凡方法: 定义中间变量,不嵌套。 ? 优雅方法: 使用对象方法嵌套,减少中间变量。 ? 三,优雅你判断语句 7,单行 if 语句:if...else......优雅方法: 使用 all 函数。 ? 四,优雅你循环语句 13,单行循环语句:推导 平凡方法: 使用普通 for 循环。 ?...优雅方法: 使用推导:[... for .... in ... if ... ]。 ? 14,同时遍历序列元素和元素下标 平凡方法: 遍历下标,并用下标访问元素。 ?

    72010

    Python装饰器入门教程 | 新手教程

    那么今天就带大家一步步了解装饰器使用吧 装饰器(Decorator)python一个重要部分,简单来说,他修改其他函数功能函数。...他们有助于让我们代码更简短,也更Pythonic!...万物皆对象 在Python世界中,万物皆对象,听起来比较抽象,但其实理解起来很简单,你可以用将任何一个变量、函数、方法、类等等赋值给另一个变量。只有你了解了这些,才能进一步理解装饰器。...通过合并,我们将上面两个例子进行和组装,变成了一个升级版闭包,很多人会说,什么闭包呢?...装饰器实例 装饰器比大量使用在Flask、Django中,学好了它不管对于你理解flask路由,还是之后代码开发都有很多帮助,那么我们来做个简单例子,日志打印装饰器: import time

    68210

    Python 进阶指南(编程轻松进阶):六、编写 Python 风格代码

    即使没有对close()调用,当执行离开块时,with语句也会自动调用它。 使用is而不是==与None进行比较, ==相等运算符比较两个对象值,而is相同运算符比较两个对象标识。...这可能由于==操作符过载造成,第 17 章对此有更详细介绍。但是spam is None会检查spam变量是否字面上None。...第 8 章展示了一些使用它们会在你代码中引入意想不到错误例子。 检查变量是否许多值中一个 有时,您可能会遇到与上一节中描述情况相反情况:检查单个变量是否多个可能值中一个。...相反,您可以将多个值放入一个元组中,并使用in运算符检查该元组中是否存在变量值,如下例所示: >>> # Pythonic Example >>> spam = 'cat' >>> spam in ('...一系列==操作符可以检查多个变量是否相等,而in操作符可以检查一个变量是否许多可能值中一个。 本章讲述了几个 Python 语言习惯用法,为您提供了如何编写更多 Python 代码提示。

    94160

    pythonic风格代码有什么好处?附12个代码实例

    pythonic开发者们在写python代码过程中总结编程习惯,崇尚优雅、明确、简单。就好比中文笔画,有先后顺序,最符合文字书写习惯。...因为习惯,不是江湖规则,所以你大可不必遵守pythonic,但如果你想成为python高手,最好养成这个习惯。 对比其他语言我们能直观看出pythonic风格特点,比如写一个简单循环。...if x == 1: print ('one') 「7、缩进」 续行应该与其包裹元素对齐,要么使用圆括号、方括号和花括号内行连接来垂直对齐,要么使用挂行缩进对齐3。...当使用挂行缩进时,应该考虑到第一行不应该有参数,以及使用缩进以区分自己续行。...具有单一功能 包含文档注释 返回一个值 函数和类应该用两个空行隔开 尽量使用内置函数 「补充」 最后说下PEP8规范,PEP8Python编码规范,其目的在于提高代码可读性。

    53510

    编写高质量Python程序(一)引论

    本系列文章为《编写高质量代码——改善Python程序91个建议》精华汇总。 理解Pythonic概念 什么 PythonicPythonic代码就是具有Python独特风格代码。...其他语言交换两个变量时,一般需要一个临时中间变量,而Python中可以用一行代码直接交换。 for循环直接遍历容器。...其他语言中,需要根据索引下标i对容器进行遍历,而Python可以用for循环直接遍历容器。 使用 str.format() 格式化字符串,Pythonic字符串格式化方法。...编写Pythonic代码 注意要避免事: 避免只用大小写来区分不同对象。 避免使用容易混淆名称。 不要害怕过长变量名。能表达清楚变量代表含义即可。...def A(): B() def B(): pass 空格使用 二元运算符(赋值=,比较(==, , !

    58900

    对 python 中变量值交换一些思考

    实现如下: t = x x = y y = t pythonic,对于这种需求其实python为我们提供了一种更方便解决方案。...性能比较 虽然写法简洁方便,但是是否已损耗性能为代价呢?...看一些赋值运算符右边表达式,即 y, x,这实际在python中称为元组数据结构。我们可以看到赋值表达式左边 x, y,那么为什么元组可以直接赋值给 x,y 呢?...此处利用了python一个特性,即任何序列(或可迭代对象)都可以通过简单赋值操作分解为单独变量。...min_score, *other_scores, max_score = scores 这里引入了一种新写法,*表达式变量轻松分解出中间可迭代对象并赋值给other_scores,同时将开头和结束对象分别赋值

    82230

    全栈数据工程师养成攻略:Python 基本语法

    许多人号称精通Python,却不会写Pythonic代码,对很多常用包使用也并不熟悉。学海无涯,我们先来了解一些Python中最基本内容。...Linux和Mac默认编码集UTF8,而Windows则是ASCII。如果数据编码字符集,和你使用Python进行处理时所用字符集不同,则会出现乱码问题。...另外,我个人习惯在Python代码头部加入以下内容,其中第二行声明了使用UTF8字符集。 变量 Python中变量可以看作一个个容器,里面存放着我们需要使用值。...列表中元素有序对等,所以是用下标来赋值和访问,而字典中元素无序,所以是用key来操作相应value。 使用 has_key() 判断字典中是否有某个key。...我们在选择变量名时,应注意避开这些保留字符。 行和缩进 在Python中,代码块边界不是通过大括号等符号进行划分,而是通过行缩进实现

    91080

    对比几段代码,看看你 Python 菜鸟还是老鸟(另有福利)

    所谓 pythonic,我觉得包含两方面:一代码风格符合 Python 特点,能合理使用 Python “语法糖”;二代码简洁优美,稳定性高,可读性好,便于维护和修改。...Python 中类似的例子还有不少,来举几个: 1、交换两个变量值,普通写法: temp = a a = b b = temp pythonic 写法: a, b = b, a 2、类似的解包(unpacking...i in lst if i > 0] 这个被称为“列表解析”(List comprehension,中文翻译说法有很多),可以说是非常 pythonic 一个用法了。...7、判断一个值是否为True、是否为空列表、是否None,普通写法: if x == True: pass if len(y) == 0: pass if z == None:...最后,留2个小作业,也是我标题上提到“福利”: 判断一个列表 A 是否为另一个列表 B “子集”,也就是列表 A 中元素是否都在列表 B 中。 计算 1 加到 100 和。

    71140

    几段代码,测测你 Python 菜鸟还是老鸟

    所谓 pythonic,我觉得包含两方面:一代码风格符合 Python 特点,能合理使用 Python “语法糖”;二代码简洁优美,稳定性高,可读性好,便于维护和修改。...Python 中类似的例子还有不少,来举几个: 1、交换两个变量值,普通写法: temp = aa = bb = temp pythonic 写法: a, b = b, a 2、类似的解包(unpacking...i in lst if i > 0] 这个被称为“列表解析”(List comprehension,中文翻译说法有很多),可以说是非常 pythonic 一个用法了。...7、判断一个值是否为True、是否为空列表、是否None,普通写法: if x == True: pass if len(y) == 0: pass if z == None:...于是你不得不增加更多判断。 pythonic 写法: value = dct.get(key, 0) 改用 get 方法,不存在时会得到 None,或者指定默认值(这里 0)。

    72380

    来看几段代码,测测你 Python 菜鸟还是老鸟

    所谓 pythonic,我觉得包含两方面:一代码风格符合 Python 特点,能合理使用 Python “语法糖”;二代码简洁优美,稳定性高,可读性好,便于维护和修改。...Python 中类似的例子还有不少,来举几个: 1、交换两个变量值,普通写法: temp = a a = b b = temp pythonic 写法: a, b = b, a 2、类似的解包(unpacking...i in lst if i > 0] 这个被称为“列表解析”(List comprehension,中文翻译说法有很多),可以说是非常 pythonic 一个用法了。...7、判断一个值是否为True、是否为空列表、是否None,普通写法: if x == True: pass if len(y) == 0: pass if z == None:...最后,留2个小作业: 判断一个列表 A 是否为另一个列表 B “子集”,也就是列表 A 中元素是否都在列表 B 中。 计算 1 加到 100 和。

    55150
    领券