适用于多种情况的python 3.6长度函数

适用于多种情况的python 3.6长度函数,python,variable-length,Python,Variable Length,我的情况是 if len(a) = 0 a = '' if len(b) = 0 b = '' if len(c) = 0 c = '' 如果len(任何对象)为零,则将其声明为null。 我必须为所有的字母表继续这样做。最好的编码方式是什么 其他信息: import test2 x = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'] # a b c are declared in test2 file as a = set

我的情况是

if len(a) = 0
   a = ''
if len(b) = 0
   b = ''
if len(c) = 0
  c = ''
如果len(任何对象)为零,则将其声明为null。 我必须为所有的字母表继续这样做。最好的编码方式是什么

其他信息:

import test2
x = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j'] # a b c are declared in test2 file as a = set()...b = set() ...
for y, z in enumerate(x):
    if len(getattr(test2, x[y])) >= 5:
            setattr(test2, x[y], '') = ''
    else:
        pass

为什么我不能在那里使用setattr?

下面的代码举例说明了一些可怕的编程实践,但这是我试图理解您的请求(真的是26个单字母变量?)


如果长度为0且为字符串,则已存在空字符串。“如果len(任何对象)为零,则将其声明为null”-这不会将任何内容声明为null。你甚至认为“声明为null”是什么意思?为什么一开始就有26个单字母变量。改用字典或列表。它们的类型为set(),当set为空时,我需要它将它们声明为null,这样它就不会打印set()。您不需要“将它们声明为null”。无论在哪里打印这些集,如果它们是空的,就不要打印它们。(同样,严肃地说,不要使用26个单字母变量。)为什么test2文件定义字母是变量,但在提供的代码中,它们被列表视为字符串?a-z位于不同的文件中,我必须在其中导入它们。这就是我使用getattr和setattr的原因。如果变量在其他文件中,我不确定如何使用。请告知你的问题的背景是什么?这是家庭作业吗?如果是这样的话,请用你所有的信息更新你的帖子,不管你认为什么有用。现在,我们不知道您要完成什么以及您必须完成什么。您知道
getattr
setattr
要做什么吗?我有一个包含所有数据(成员记录)的文件。我需要读取数据文件并为变量赋值。记录完成后,我必须将记录写入csv并移动到下一个记录(记录不标准,变量数量不断变化。在此过程中,我必须将所有变量保存在一个文件中,以便以后可以将其写入csv。一旦我获得csv权限,csv将清除变量并将其重新用于其他记录。
a = "fshdj"
b = ""
c = "fshdj"
d = "fshdj"
e = ""
f = "fshdj"
g = "fshdj"
h = "fshdj"
i = "dj"
j = "fshdj"
k = "fshdj"
j = "fsj"
l = "fshdj"
m = "fshdj"
n = "fshdj"
o = "f"
p = "fshdj"
q = "fshdj"
r = " "
s = "fshdj"
t = "fshdj"
u = ""
v = "fshdj"
w = "fshdj"
x = "fshdj"
y = ""
z = "fshdjfshdj"

alpha = [a , b, c, d, e, f, g, h, i, j, k, l, m, n, o, p, q, r, s, t, u, v, w, x, y, z]

for i in alpha:
  if len(i) == 0:
    i = None
  print i