python几种常用功能实现代码实例
这篇文章主要介绍了python几种常用功能实现代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1、python程序退出的几种方式
importsys sys.exit() sys.exit(0) sys.exit(1) 或者 os._exit() 该方法中包含一个参数status,默认为0,表示正常退出,也可以为1,表示异常退出
2.python实现获取电脑IP、主机名、Mac地址
importsocket
importuuid
#获取主机名
hostname=socket.gethostname()
#获取IP
ip=socket.gethostbyname(hostname)
#获取Mac地址
defget_mac_address():
mac=uuid.UUID(int=uuid.getnode()).hex[-12:]
return":".join([mac[e:e+2]foreinrange(0,11,2)])
#ipList=socket.gethostbyname_ex(hostname)
#print(ipList)
print("主机名:",hostname)
print("IP:",ip)
print("Mac地址:",get_mac_address())
3.aes加密
importbase64
fromCrypto.CipherimportAES
'''
采用AES对称加密算法
'''
#str不是16的倍数那就补足为16的倍数
defadd_to_16(value):
whilelen(value)%16!=0:
value+='\0'
returnstr.encode(value)#返回bytes
#加密方法
defencrypt_oracle():
#秘钥
key='123456'
#待加密文本
text='abc123def456'
#初始化加密器
aes=AES.new(add_to_16(key),AES.MODE_ECB)
#先进行aes加密
encrypt_aes=aes.encrypt(add_to_16(text))
#用base64转成字符串形式
encrypted_text=str(base64.encodebytes(encrypt_aes),encoding='utf-8')#执行加密并转码返回bytes
print(encrypted_text)
#解密方法
defdecrypt_oralce():
#秘钥
key='123456'
#密文
text='qR/TQk4INsWeXdMSbCDDdA=='
#初始化加密器
aes=AES.new(add_to_16(key),AES.MODE_ECB)
#优先逆向解密base64成bytes
base64_decrypted=base64.decodebytes(text.encode(encoding='utf-8'))
#执行解密密并转码返回str
decrypted_text=str(aes.decrypt(base64_decrypted),encoding='utf-8').replace('\0','')
print(decrypted_text)
if__name__=='__main__':
#encrypt_oracle()
decrypt_oralce()
4、python的字符串截取
str=‘0123456789' printstr[0:3]#截取第一位到第三位的字符 printstr[:]#截取字符串的全部字符 printstr[6:]#截取第七个字符到结尾 printstr[:-3]#截取从头开始到倒数第三个字符之前 printstr[2]#截取第三个字符 printstr[-1]#截取倒数第一个字符 printstr[::-1]#创造一个与原字符串顺序相反的字符串 printstr[-3:-1]#截取倒数第三位与倒数第一位之前的字符 printstr[-3:]#截取倒数第三位到结尾 printstr[:-5:-3]#逆序截取,具体啥意思没搞明白? 对应输出结果: 012 0123456789 6789 0123456 2 9 9876543210 78 789 96
5、Python获取当前用户的主目录路径,示例代码如下:
importos
print(os.environ['HOME'])
print(os.path.expandvars('$HOME'))
print(os.path.expanduser('~'))
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。