我对蟒蛇一点也不精通。我被要求查看其他人使用的python脚本
search ldap entries
. 顺便说一句,由于某种原因,我无法联系到最初的开发人员,在部署它之前,需要对它进行+测试的可视化代码检查。考虑到这些限制,请允许我继续。
import ldap3
from ldap3 import Server,Connection, ALL
conn = Connection(....)
conn.search(....)
for entry in conn.entries:
if (len(entry['cn']) > 0):
....
name = entry['name']
if name:
user_name = str(name)
else:
user_name = "Bob"
第一个问题是
len(entry['cn']) > 0
我喜欢将其解释为检查LDAP返回的cn值的字符长度,例如
cn=bob,ou=people,ou=foocomany
. 我很确定
entry['cn']
不是字符串类型,但我不知道它代表什么数据类型。你能告诉我它是什么类型的吗?
我的第2+3个问题与最初的问题没有直接关系,但是请允许我优雅地提出这些问题。
我的第二个问题是,如果这个假设是正确的,
进入[ CN ]
应转换为类似字符串类型
str(entry['cn'])
. 然后检查它的长度?
我的第三个问题开始了
if
短期我喜欢把它解释为
if name is not null
或
if name is not None
以蟒蛇的方式。我解释得对吗?如果是的话,我应该把它换成
if not (name is None)
会起作用吗?我在谷歌上搜索了一下,想得到那个stmt。