def check_specal_symbol_exit(self): has_special_symbol_exit = False # special_char_list = ['*', '#', '+', '!', '@', '$', '^', '%'] special_char_list = Utils.get_chars(6) # print(len(special_char_list), special_char_list) for i in range(len(special_char_list)): # if self.password.find(special_char_list[i]): if special_char_list[i] in self.password: has_special_symbol_exit = True break return has_special_symbol_exit
def slot_box_checked(self): # print(self.cipher_type) # 统一扫描所有选项,直接算出密码字符集 self.char_set.clear() if self.cipher_type == '随机密码': # 随机码 if self.shell.checkBox_1.isChecked(): # 大写字母 self.char_set.update(string.ascii_uppercase) # print(self.char_set | string.ascii_uppercase) # 并集? if self.shell.checkBox_2.isChecked(): # 小写字母 self.char_set.update(string.ascii_lowercase) if self.shell.checkBox_3.isChecked(): # 阿拉伯数字 self.char_set.update(string.digits) if self.shell.checkBox_4.isChecked(): # 可见字符 self.char_set.update(Utils.get_chars(6)) if self.shell.checkBox_5.isChecked(): # 小写汉字数字 print('小写汉字数字') if self.shell.checkBox_6.isChecked(): # 大写汉字数字 print('大写汉字数字') if self.shell.checkBox_7.isChecked(): # 排除字符 self.char_mask.clear() # print(self.shell.lineEdit_2.text()) self.char_mask.update(self.shell.lineEdit_2.text()) # print(self.char_mask) # self.char_set -= self.char_mask # 差集? # # 更新集合s1的内容为s1-s2后的结果 self.char_set.difference_update(self.char_mask) # s1.difference(s2) # 该操作对s1内容无影响 # 判断集合是否与指定集合不存在交集 # if self.char_set.isdisjoint(self.char_mask): # print('已排除') if self.shell.checkBox_8.isChecked(): # 特殊字符 self.char_set.update(self.shell.lineEdit.text()) # 更新 # # if text.issubset(self.char_set): # 判断集合是否指定集合的子集 # # print('已添加') # # else: # # self.char_set.difference_update(text) # # print('已排除') elif self.cipher_type == '易记密码': # 易记密码 if self.shell.checkBox_9.isChecked(): pass # self.char_set.update(string.ascii_uppercase) if self.shell.checkBox_10.isChecked(): pass # self.char_set.update(string.ascii_uppercase) else: # PIN码,则一切选择无效,界面保持现状 if self.shell.checkBox_11.isChecked(): self.code_type = 4 # '4位PIN' elif self.shell.checkBox_12.isChecked(): self.code_type = 6 # '6位PIN'