在用户输入单词之前始终显示一条空消息
show always an empty message until user enter a word
我有他下面的方法来创建一个新的bucket。
当存储桶名称已经存在时,我收到一条消息 "bucket name already exist"。
但是如果用户不输入任何单词并单击回车我会收到错误消息,但我想再次显示消息 "Enter a bucket name" 直到用户输入某个单词。
你知道我如何验证用户是否至少输入了一个字吗?
def createBucket():
while True:
c = boto.s3.connect_to_region(REGION)
try:
bucketname = raw_input("Enter bucket name ")
bucket = c.create_bucket(bucketname)
except S3CreateError:
print "bucket name already exist"
continue
else:
break
return bucketname
检查空字符串:
def createBucket():
while True:
c = boto.s3.connect_to_region(REGION)
try:
bucketname = raw_input("Enter bucket name ")
if bucketname: # will be True for any non-empty string
c.create_bucket(bucketname)
break
print("bucketname cannot be an empty string")
except S3CreateError:
print "bucket name already exist"
return bucketname
如果数据有效,您可以break
尝试,不需要else或继续。您可能还想将 c = boto.s3.connect_to_region(REGION)
移到 while 之外。
我有他下面的方法来创建一个新的bucket。
当存储桶名称已经存在时,我收到一条消息 "bucket name already exist"。
但是如果用户不输入任何单词并单击回车我会收到错误消息,但我想再次显示消息 "Enter a bucket name" 直到用户输入某个单词。
你知道我如何验证用户是否至少输入了一个字吗?
def createBucket():
while True:
c = boto.s3.connect_to_region(REGION)
try:
bucketname = raw_input("Enter bucket name ")
bucket = c.create_bucket(bucketname)
except S3CreateError:
print "bucket name already exist"
continue
else:
break
return bucketname
检查空字符串:
def createBucket():
while True:
c = boto.s3.connect_to_region(REGION)
try:
bucketname = raw_input("Enter bucket name ")
if bucketname: # will be True for any non-empty string
c.create_bucket(bucketname)
break
print("bucketname cannot be an empty string")
except S3CreateError:
print "bucket name already exist"
return bucketname
如果数据有效,您可以break
尝试,不需要else或继续。您可能还想将 c = boto.s3.connect_to_region(REGION)
移到 while 之外。