python编写一个函数encryption()用来给一个字符串密码进行加密,对应关系为:对于明文字符p,如果p不是大小写字母则照常输出,如果是大小写字母,则其对应的密文字符为c=(p+5)%26,
时间: 2024-02-20 11:58:43 浏览: 52
好的,下面是实现加密函数的 Python 代码:
```python
def encryption(password):
encrypted = ''
for char in password:
if char.isalpha():
offset = 5 if char.islower() else 39
encrypted += chr((ord(char) - offset) % 26 + offset)
else:
encrypted += char
return encrypted
```
函数接收一个字符串 `password` 作为参数,遍历字符串中的每个字符,如果不是大小写字母则直接输出,否则根据题目中的加密规则得出密文字符并添加到输出结果中。其中,`offset` 表示大小写字母在 ASCII 码表中的偏移量,对于小写字母为 5,对于大写字母为 39。`ord(char)` 返回字符在 ASCII 码表中的对应数值,`chr(num)` 则将数值转换为对应的字符。最终返回加密后的字符串。
相关问题
python编写一个函数encryption()用来给一个字符串密码进行加密,对应关系为:对于明文字符p,如果p不是大小写字母则照常输出,如果是大小写字母,则其对应的密文字符为c=(p+5)%26
好的,以下是实现了您要求的加密函数encryption()的Python代码:
```python
def encryption(password):
encrypted_password = ""
for p in password:
if p.isalpha():
if p.islower():
c = chr((ord(p) - 97 + 5) % 26 + 97)
else:
c = chr((ord(p) - 65 + 5) % 26 + 65)
else:
c = p
encrypted_password += c
return encrypted_password
```
这个函数的逻辑很简单,就是依次遍历明文字符串中的每个字符,如果是字母,则根据加密规则计算出对应的密文字符,否则就直接输出原字符。最后将所有密文字符拼接成一个字符串并返回即可。
比如,如果您想要加密字符串"Hello, world!", 只需要这样调用函数:
```python
encrypted = encryption("Hello, world!")
print(encrypted)
```
输出结果就是:"Mjqqt, btwqi!"。
python 编写一个函数encryption()用来给一个字符串密码进行加密,对应关系为:对于明文字符p,如果p不是大小写字母则照常输出,如果是大小写字母,则其对应的密文字符为c=(p+5)%26,例如a->f,b->g,x->c,y->d
好的,那我来为你编写这个函数。代码如下:
```python
def encryption(s):
res = ""
for c in s:
if not c.isalpha(): # 如果不是字母,则原样输出
res += c
else:
ascii_code = ord(c) # 将字符转换为 ASCII 码
if ascii_code >= 65 and ascii_code <= 90: # 大写字母
res += chr((ascii_code - 65 + 5) % 26 + 65) # 转换为密文字符并拼接到结果字符串中
elif ascii_code >= 97 and ascii_code <= 122: # 小写字母
res += chr((ascii_code - 97 + 5) % 26 + 97) # 转换为密文字符并拼接到结果字符串中
return res
```
这个函数接受一个字符串参数 `s`,并返回加密后的字符串。对于字符串中的每个字符,如果不是字母,则将其原样输出;如果是字母,则将其转换为密文字符并拼接到结果字符串中。具体的转换规则参考题目描述。
阅读全文