花了一晚上时间,终于把Python的基本用法归纳好了

本文详细介绍了Python内置函数如complex、chr和ord,以及复数的运算。此外,还探讨了排序算法,包括快速排序、冒泡排序和选择排序。文章通过示例展示了如何实现这些功能,帮助读者理解Python高效编程的关键概念。
摘要由CSDN通过智能技术生成

一、内置函数

1. complex([real[,imag]])

返回一个复数,实部 + 虚部*1j,或者把字符串或者数字转成复数形式。

参数可以是复数表达式,也可以是字符串。当参数是字符串的时候,数字与操作符之间不能有空格。即comple(‘1 + 2j’)是错误的。

print(complex(1, 2))

print(complex(1 + 2j))

print(complex(‘1+2j’))

输出 1+2j

print(complex(1))

输出 1+0j

满足:实部 + 虚部*1j 的数被称为复数。

a = 1 + 3j

求实部

print(a.real)

求虚部

print(a.imag)

求共轭

print(a.conjugate())

2. chr(i) 与 ord(i)

chr(i) 是将当前整数 i 转成对应的 ascii 字符,可以是十进制,也可以是十六进制,其中0 <= i <= 0x10ffff (1114111)。其对应的逆操作为 ord(i),i 为 ascii 字符。

下面的函数演示如何求一个可迭代对象的 ascil字符 或者其对应的数值。注意函数 ordplus ,参数 x 中的每一个元素必须是单个字符,如果是列表,形式如下:[‘P’ , ‘y’, ‘t’ , ‘h’, ‘o’ , ‘n’]。

def chrplus(x):

chr_string = ‘’

for elem in x:

chr_string += chr(elem)

return chr_string

def ordplus(x):

ord_list = []

for elem in x:

ord_list.append(ord(elem))

return ord_list

x = ‘Python高效编程’

temp = ordplus(x)

print(temp)

输出:[112, 121, 116, 104, 111, 110,

39640, 25928, 32534,31243]

init = chrplus(temp)

print(init)

输出:Python高效编程

3.enumerate(iterable, start=0)

返回 enumerate 对象。迭代对象必须是序列,迭代器,或者其他支持迭代的对象。enmerate() 函数返回的是迭代器,同样是可迭代对象。每次迭代的元素,都包含元素在序列里的序号(strat 默认值为 0) 和元素对应值。因此,我们可以用 for 循环获取返回值。

等价于:

def enumerate(sequence, start=0):

n = start

for elem in sequence:

yield n, elem

n += 1

for i, elem in enumerate([‘P’, ‘y’, ‘t’, ‘h’, ‘o’, ‘n’]):

print(i, elem)

4. abs(x)

返回数的绝对值。参数可以是整数或者浮点数。如果参数是复数,返回复数的模。Python 中虚数用数值加上字符 j 的形式表示。要注意 j 前面的数值不能省略,比如 1j。

下面是我写的简易版的 abs 函数:

from math import sqrt

def naive_abs(x):

isinstance 判断参数x是否为整数或浮点数

if isinstance(x, int) or isinstance(x, float):

if x < 0:

x = - x

判断参数x是否为复数

elif isinstance(x, complex):

x.real 复数的实部

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值