python学习:实现将字符串进行加密

‘‘‘
题目描述
1、对输入的字符串进行加解密,并输出。
2加密方法为:
当内容是英文字母时则用该英文字母的后一个字母替换,同时字母变换大小写,如字母a时则替换为B;字母Z时则替换为a;
当内容是数字时则把该数字加1,如0替换1,1替换2,9替换0;
其他字符不做变化。s
‘‘‘
# -*- coding: utf-8 -*-
import re
#判断是否是字母
def isLetter(letter):
    if len(letter) != 1:
        return 0
    else:
        num_re = ‘[a-z]|[A-Z]‘
        pattern = re.compile(num_re)
        result = re.match(pattern, letter)
        if result == None:
            return 0
        else:
            return 1
#判断字母是否是小写字母:
def isLower(letter):
    if letter.lower()==letter:
        return 1
    else:
        return 0
#判断字母是否是Z/z
def isZ(letter):
    if letter.lower()==‘z‘:
        return 1
    else:
        return 0
#对英文字母进行加密
def encryLetter(letter):
    if isZ(letter)==‘z‘:
        if isLower(letter)==1:
            return ‘A‘
        else:
            return ‘a‘
    else:
        if isLower(letter)==1:
            return chr(ord(letter)+1-32)
        else:
            return chr((ord(letter))+1+32)

#对数字进行加密
def encryNum(num):
    if num==9:
        return 0
    else :
        return int(num)+1

# 判断是否为数字:
def isNum(var):
    if len(var) != 1:
        return 0
    else:
        num_re = ‘[0-9]‘
        pattern = re.compile(num_re)
        result = re.match(pattern, var)
        if result == None:
            return 0
        else:
            return 1
#对一个字符进行加密
def Encrypt_single(character):
    if isLetter(character)==1:
        return encryLetter(character)
    if isNum(character)==1:
        return encryNum(character)
    else:
        return character
‘‘‘
接口描述:
    实现接口,每个接口实现1个基本操作:
void Encrypt (char aucPassword[], char aucResult[]):在该函数中实现字符串加密并输出
说明:
1、字符串以\0结尾。
2、字符串最长100个字符。

‘‘‘
def Encrypt():
    while 1:
        unEncrypt = input(‘请输入要加密的字符串,并且字符串长度不大于8:‘)
        if len(unEncrypt)>8:
            print("字符串长度大于8,请重新输入!\n")
            continue
        else:
            break
    Encrypt_str=[]
    for i in range(len(unEncrypt)):
        Encrypt_str.append(Encrypt_single(unEncrypt[i]))
    print(Encrypt_str)
Encrypt()
时间: 2024-08-06 20:42:15

python学习:实现将字符串进行加密的相关文章

Python学习-第二天-字符串和常用数据结构

Python学习-第二天-字符串和常用数据结构 字符串的基本操作 def main(): str1 = 'hello, world!' # 通过len函数计算字符串的长度 print(len(str1)) # 13 # 获得字符串首字母大写的拷贝 print(str1.capitalize()) # Hello, world! # 获得字符串变大写后的拷贝 print(str1.upper()) # HELLO, WORLD! # 从字符串中查找子串所在位置 print(str1.find('o

Python学习:12.字符串格式化

字符串格式化 讲解Python这么久,也没有讲解Python的字符串的格式化,那我们今天就来了解一下python字符串格式化的强大之处. 字符串格式化的两种方式 百分号方式和format方式,百分号方式比较老,而format方式是比较先进的,企图替代古老的方式,目前两者共存,接下来我们就针对这两种方式进行讲解. 1.百分号方式 name = 'alexsel' print('name: %s'%name) 这是使用百分号方式输出变量的简单写法,百分号方式内部还有很多可选参数. %[(name)]

[python]python学习笔记(七)——加密

1,python对字符串加密常见的方法: [python] view plaincopy <pre code_snippet_id="340592" snippet_file_name="blog_20140512_1_2282504" name="code" class="python">1. 最简单的方法是用base64: import base64 s1 = base64.encodestring('hell

[Python学习] 专题三.字符串的基础知识

        在Python中最重要的数据类型包括字符串.列表.元组和字典等.该篇主要讲述Python的字符串基础知识. 一.字符串基础         字符串指一有序的字符序列集合,用单引号.双引号.三重(单双均可)引号引起来.如: s1='www.csdn.net'   s2="www.csdn.net"   s3='''aaabbb''' 其中字符串又包括: 1.转义字符串 像C语言中定义了一些字母前加"\"来表示常见的那些不能显示的ASCII字符,pyth

Python学习笔记(字符串)

一变量 1创建变量:d=4   表示将整型对象‘4’赋值给变量d 记住:一切数据都是对象 记住:一切变量都是数据对象的一个引用 分析:Python内部的引用计数.sys.getrefcount 2变量命名规范: (1)只能用字母和下划线 (2)不能用关键字如if等 (3)大小写敏感 3赋值: 记住多态特性 多重赋值 删除:del 一个等号=是赋值,两个等号==是比较 注意:三内置必须用熟.type,help,dir 4常用基本数据类型: (1)    int整型 (2)    boolean布尔

python学习笔记:字符串

string类型由多个字符组成,可以把字符串看成一个整体,也可以取得字符串中的任何一个部分. 函数len() 返回字符串的长度 >>> address = 'www.baidu.com' >>> len(address) 13 用for语句遍历字符串 从第一个字符开始,按照顺序读取字符,然后在做相应的处理,直到最后一个字符,这个处理过程我们称为遍历. >>> for char in address : ... print char 字符串片断 字符串的

python 学习笔记day04-python字符串、列表、元组

字符串 序列 序列类型操作符 序列操作符 作用 seq[ind] 获得下标为ind的元素 seq[ind1:ind2] 获得下标从ind1到ind2间的元素结合 seq * expr 序列重复expr次 seq1 + seq2 连接序列seq1和seq2 obj in seq 判断obj元素是否包含在seq中 obj not in seq 判断obj元素是否不包含在seq中 内建函数 函数 含义 list(iter) 把可迭代对象转换为列表 str(obj) 把obj对象转换成字符串 tuple

python学习笔记之字符串

python中的字符串在C语言中体现为是一个字符数组,每次创建字符串时候需要在内存中开辟一块连续的空,并且一旦需要修改字符串的话,就需要再次开辟空间,万恶的+号每出现一次就会在内从中重新开辟一块空间. 字符串的输出格式: >>>name = "test" >>>print("my name is %s " %name) --输出结果:my name is test PS: 字符串是 %s;整数 %d;浮点数%f 字符串的函数: c

Python学习 Day 3 字符串 编码 list tuple 循环 dict set

字符串和编码 字符 ASCII Unicode UTF-8 A 1000001 00000000 01000001 1000001 中 x 01001110 00101101 11100100 10111000 10101101 格式化 在Python中,采用的格式化方式和C语言是一致的,用%实现,举例如下: >>> 'Hello, %s' % 'world' 'Hello, world' >>> 'Hi, %s, you have $%d.' % ('Michael'

python学习之巧妙字符串反转

字符串反转是一个最常见的面试题,写法也很多种,下面给2家介绍2种,一种是常规写法,一种是巧妙写法: 题目:完成字符串abcd反转. 方法1:比较容易想到的想法,利用listdef reversestr(string):         strlist=[]          i=len(string)-1          while(i>=0):                  strlist.append(string[i])                   i-=1