python函数及语法笔记

1、Python中numpy库unique函数

对于一维数组或者列表,unique函数去除其中重复的元素,并按元素由大到小返回一个新的无元素重复的元组或者列表。


import numpy as np
A = [1, 2, 2, 5,3, 4, 3]
a = np.unique(A)
B= (1, 2, 2,5, 3, 4, 3)
b= np.unique(B)
C= ['fgfh','asd','fgfh','asdfds','wrh']
c= np.unique(C)
print(a)
print(b)
print(c)
# 输出为 [1 2 3 4 5]
# [1 2 3 4 5]
# ['asd' 'asdfds' 'fgfh' 'wrh']

**2、python assert **

python assert 断言句语。在没完善一个程序之前,我们不知道程序在哪里会出错,与其让它在运行最崩溃,不如在出现错误条件时就崩溃,需要assert断言。
代码:

lists =[1,2,3]
if __name__ == '__main__':
    print("hello world")
    assert len(lists) >=10,'元素个数小于5'
    print("-----------")

结果如下:
这里写图片描述
3、python zip

zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。

lists =[10,11,7,6,9,5,4]
if __name__ == '__main__':
    zip_data = zip(lists, range(0, len(lists)))
    for i in zip_data:
        print(i)

输出:

(10, 0)
(11, 1)
(7, 2)
(6, 3)
(9, 4)
(5, 5)
(4, 6)

如果采用dict:

lists =[10,11,7,6,9,5,4]
if __name__ == '__main__':
    zip_data = zip(lists, range(0, len(lists)))
    print("------dict form-------")
    print(dict(zip_data))

输出:

------dict form-------
{4: 6, 5: 5, 6: 3, 7: 2, 9: 4, 10: 0, 11: 1}

4、Python enumerate() 函数

enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

>>>seasons = ['Spring', 'Summer', 'Fall', 'Winter']
>>> list(enumerate(seasons))
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
>>> list(enumerate(seasons, start=1))       # 小标从 1 开始
[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]

4、字符串数组转成float并保留3位小数

	import numpy as np
	data = ['1.04545677','2.012411','3.41521552']
	data = np.around(np.array(data, dtype=float),decimals=3).tolist()
	print(data)
	
	》》[1.045, 2.012, 3.415]

5、python3 输出提示如下错误:

python3 'ascii' codec can't encode characters in position 0-2: ordinal not i

解决方案:

import sys
import codecs
sys.stdout = codecs.getwriter("utf-8")(sys.stdout.detach())

未完待续。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值