字符串操作2-判断-Python
关于判断的实例:
判断:startswith,endswith,isalpha,isdigit,isalnum,isspace,返回值都是布尔类型。
import random s = 'd9c8750bed0b3c7d089fa7d55720d6cf.png' # startswith:返回是否以字符串开头 result = s.startswith('abc') print(result) # False result = s.startswith('d9') print(result) # True # endswith:返回是否以字符串结尾 result = s.endswith('png') print(result) # True ''' 综合实例:模拟上传图片,格式必须是.jpg和.png,文件名称长度必须大于6位,否则随机生成文件名。 ''' s = 'QWERTYUIOPASDFGHJKLZXCVBNMqwertyuiopasdfghjklzxcvbnm123456789' file = input('请输入图片全名') # 判断扩展名 if file.endswith('jpg') or file.endswith('png'): i = file.rfind('.') # 从右边查找第一个. name = file[:i] # .前面的就是文件的名字 if len(name) < 6: # 这是较为简单的随机数生成 # n = random.randint(100000, 999999) # 较为复杂的随机数生成 filename = '' for j in range(6): # 循环6次 index = random.randint(0, len(s) - 1) # 随机取下标 filename += s[index] # 根据下标获取字符串 file = filename + file[i:] # 加上文件格式名 print('成功上次%s文件' % file) else: print('文件格式不正确,上传失败!')
isalpha():是否是全是字母组成。isdigit(0:是不是全是数字组成。isalnum():是不是包含数字和字母。isspace():判断是不是有空格组成。
s = 'a123' result = s.isalpha() print(result) # False s = 'hello' result = s.isalpha() print(result) # True s = '100' print(s.isdigit()) # True s = 'a100' print(s.isalnum()) # True s = ' ' print(s.isspace()) # True s = ' as ' print(s.isspace()) # False
一个队用户名和密码进行输入限制的实例:
1、用户名必须都是小写,大于6位,首字母不能是数字。
2、手机必须是11位和数字。
3、输入成功后要跳出循环。
flag = True while flag: name = input('用户名/手机号') # 判断 if (len(name) >= 6 and name.islower() and name[0].isalpha()) or (name.isdigit() and len(name) == 11): while True: password = input('输入密码:') # 判断 if len(password) == 6 and password.isdigit(): # 验证密码和用户名的准确性 if (name == 'admin123' or name == '18711119999') and password == '123456': print('用户登录成功!') flag = False # 重新输入用户名和密码 break # 跳出当前循环 else: print('用户名或密码有误!') break else: print('密码必须是数字和6位') else: print('用户名或手机号码格式错误!')

浙公网安备 33010602011771号