Python黑魔法大全

2019-06-27  本文已影响0人  杜子渊

说明:本文描述的所有“黑魔法”都以Python3做示例代码,Python2示例代码请自行转换。本文不探讨Python基础课程,基础课程请自行学习。文章我会陆续更新,会很长,喜欢的朋友可以在底下留言。

1. 数字篇

1.1 二进制、八进制、十六进制直接输入
0b11
>>3

0o11 
>>9

0x11
>>17
# 以上输入不允许出现小数
1.2 进制转换
# 十进制转二、八、十六进制
bin(253)
>>'0b11111101'

oct(253)
>>'0o375'

hex(253)
>>'0xfd'
# 以上输入不允许出现小数

# 各种进制转十进制
'''
int(<string>, <base>)
<base> 应该在2和36之间
'''
int('11',2)
>>3

int('11',4)
>>5

int('11',8)
>>9

int('11',36)
>>37
1.3 复数直接用
a = 9 + 7j

# 取共轭
a.conjugate()
>>(9-7j)

a*a.conjugate()
>>(130+0j)

# 虚部
a.imag
>>7.0

# 实部
a.real
>>9.0
1.4 分数
from fractions import Fraction
# 直接从float构造,自动约分
Fraction(1.875)
>>Fraction(15, 8) # 15/8

# 从两整数相除构造
a = Fraction(2,3)
a.numerator
>>2  # 分子
a.denominator
>>3  # 分母

b = Fraction(5,7)

a*b
>>Fraction(10, 21)

a-b
>>Fraction(-1, 21)

float(a)
>>0.6666666666666666
1.5 其他数学常量、函数
from math import e, pi, sin, cos, log, sqrt ...

e
>>2.718281828459045

pi
>>3.141592653589793

# 再说一个开根号的简单方法
2**0.5
>>1.4142135623730951

# 三次根
2**(1/3)
>>1.2599210498948732

2.字符串篇

2.1 字母表
from string import ascii_letters, ascii_lowercase, ascii_uppercase, octdigits, digits, hexdigits

# 小写字母
ascii_lowercase 
>>'abcdefghijklmnopqrstuvwxyz'

# 大写字母
ascii_uppercase
>>'ABCDEFGHIJKLMNOPQRSTUVWXYZ'

# 全部字母
ascii_letters
>>'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'

octdigits  # 八进制字符集
>>'01234567'

digits  # 十进制字符集
>>'0123456789'

hexdigits  # 十六进制字符集
>>'0123456789abcdefABCDEF'

# 别问我为什么没有二进制字符集,没见过你这么懒的
2.2 字符串函数
2.2.1 判定函数
函数 作用 示例/说明
isalnum 是否为字母或数字
isalpha 是否为字母
isascii 是否为ascii字符
isdecimal 是否为十进制数
isdigit 是否为数字
isidentifier 是否为Python标识符
islower 是否为小写字母
isupper 是否为大写字母
istitle 是否为Title
isnumeric 是否为数字
isprintable 是否为可打印字符
isspace 是否为空字符
上一篇下一篇

猜你喜欢

热点阅读