python中squeeze()和split()函数学习

1.numpy.squeeze(a,axis = None)

从数组的形状中删除单维度条目,即把shape中为1的维度去掉

#例1
import numpy as np

a = np.arange(10).reshape(1,10)
print(a)
print(a.shape)

b = np.squeeze(a)
print(b)
print(b.shape)

结果:

[[0 1 2 3 4 5 6 7 8 9]]
(1, 10)
[0 1 2 3 4 5 6 7 8 9]
(10,)

进程已结束,退出代码0

总结:np.squeeze()函数可以删除数组形状中的单维度条目,即把shape中为1的维度去掉,但是对非单维的维度不起作用。

#例2
import numpy as np
e = np.arange(10).reshape(1,10,1)
print(e)
b = np.squeeze(e,axis=0)
print(b)
print(b.shape)

结果:

[[[0]
  [1]
  [2]
  [3]
  [4]
  [5]
  [6]
  [7]
  [8]
  [9]]]
[[0]
 [1]
 [2]
 [3]
 [4]
 [5]
 [6]
 [7]
 [8]
 [9]]
(10, 1)

进程已结束,退出代码0

2. split() 

str.split(str=“”,num=string.count(str))[n]

参数说明: 
str:表示为分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等,但是不能为空(“”)。若字符串中没有分隔符,则把整个字符串作为列表的一个元素 ;num:表示分割次数。如果存在参数num,则仅分隔成 num+1 个子字符串,并且每一个子字符串可以赋给新的变量;[n]:表示选取第n个分片。

# !/usr/bin/python
# -*- coding: UTF-8 -*-
import numpy as np


str = "Line1-abcdef Line2-abc Line4-abcd"
print(str.split())      # 以空格为分隔符,
print(str.split(' ', 1))  # 以空格为分隔符,分隔成两个
print(str.split(' ', 2)[1])# 以空格为分隔符,分隔成三个,取序列为1的项

结果:

['Line1-abcdef', 'Line2-abc', 'Line4-abcd']
['Line1-abcdef', 'Line2-abc Line4-abcd']
Line2-abc

进程已结束,退出代码0

 

你可能感兴趣的:(python学习)