Python基础、函数及其相关函数库(Numpy、TensorFlow)常用函数集锦(更新中,更新日期:2017-08-03)

更新记录:
2017-07-09
2017-07-12
2017-07-13
2017-07-19
2017-08-03

Python基础

1.基本操作

Python里的元素是从0开始编号

从某个元素开始取数字

>>>a=[1,2,3];b=a[1:];b
[2, 3]

取某个元素之前的数字

>>>a=[1,2,3];b=a[:-1];b
[1,2]

说明:B是从A的倒数第二个数字取前面的数字。

取倒数第一个元素

>>>a=[1,2,3];b=a[-1];b
3

取某一段元素

>>>a=[1,2,3,4]
>>>b=a[0:2]
>>>b
[1,2]

说明:取值时左闭、右开

扩展列表

>>>w=[2]*5
>>>w
[2,2,2,2,2]

2.移动数据

3.计算数据

4.控制语句

5.条件语句

if

    def sign(self,x):
        if (x >= 0):
            logic=1
        else: 
            logic=0
        return logic

while

count = 0
while (count < 9):
   print 'The count is:', count
   count = count + 1

print "Good bye!"

Python函数

参考资料
1.Python基础教程
2.Python学习与分享平台
3.Python 3.6.2rc2 documentation

len

>>>n=len([1,2,3,4,5,6]);n
6
>>>n=len([(1,2),(3,4),(5,6)]);n
3
>>>n=len(1,2,3,4,5,6)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: len() takes exactly one argument (6 given)
>>>n=len([1,2,3],[4,5,6])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: len() takes exactly one argument (2 given)

zip

>>>zip([1,2],[3,4])
[(1,3),(2,4)]

xrange

>>>t=[(1,2),(3,4),(5,6),(7,8)]
>>>m=[t[k:k+2] for k in xrange(0,4,2)]
>>>m
[[(1, 2), (3, 4)], [(5, 6), (7, 8)]]
>>>m[0]
[(1, 2), (3, 4)]

.append

>>>a=[1,2]
>>>a.append(3)
>>>a
a=[1,2,3]
>>>a.append([3])
>>>a
[1,2,3,[3]]

random.randint(a, b)

Return a random integer N such that a <= N <= b. Alias for randrange(a, b+1).

Numpy函数

参考资料:
NumPy Index

在Python中引入NumPy模块:

import numpy as np

np.arange

>>>a=np.arange(3)
>>>a
array([0, 1, 2])

>>>b=np.arange(3,7)
>>>b
array([3,4,5,6])

>>>c=np.arange(3.0)
>>>c
array([0., 1., 2.])

>>>d=np.arange(3,7,2)
>>>d
array([3,5])

>>>f=np.arange(0.0,5.0)
>>>f
array([ 0.,  1.,  2.,  3.,  4.])

np.random.randn

功能:生成随机数组
代码:

>>>a=np.random.randn(9)
>>>a
array([-1.49333996,  0.52417595,  0.34511317,  0.72437468, -2.04038084,
       -1.0797781 , -0.69342441, -2.33804615,  1.66226234])
>>> a=np.random.randn(3,3)
>>> a
array([[ 1.45463641,  1.13425746, -0.45356713],
       [-0.14581477, -0.04591037, -1.699357  ],
       [ 0.31431015, -2.24838076, -0.69609836]])
>>>a=[np.random.randn(3,3)]
>>>a
[array([[-0.68384773,  1.16566546,  1.79952596],
       [-1.06512186, -0.4309544 ,  0.14547754],
       [ 0.31870122,  0.05401874,  1.98810746]])]
>>> a=[np.random.randn(k,3) for k in [1,3]]
>>> a
[array([[-1.58348361, -1.36025393, -2.35910297]]), array([[-0.43975155,  0.40332687,  0.17635562],
       [-1.83589753,  0.09945764, -0.11786595],
       [ 1.17420373,  0.29638316, -0.33675276]])]

np.dot

功能:一维则进行点乘
代码:

>>> np.dot([1,2,3],[4,5,6])
32

功能:二维则矩阵相乘
代码:

>>> a=[[1,2],[3,4],[5,6]]
>>> b=[[1,2,3],[4,5,6]]
>>> np.dot(a,b)
array([[ 9, 12, 15],
       [19, 26, 33],
       [29, 40, 51]])

说明:a为3*2矩阵,b为2*3矩阵,结果为3*3矩阵。

np.shape

功能:测量数组形状
代码:

>>> a=np.array([(1,2),(3,4),(5,6)])
>>> a.shape
(3,2)

np.reshape

>>>a = np.arange(6)
>>>a
array([0,1,2,3,4,5])
>>>b = np.reshape(a,(2,3)]
array([[1,2,3],
       [4,5,6]])
>>>a=[1,2,3,4]
>>>b =np.reshape(a,(2,2))
>>>b
array([[1,2],
       [3,4]])

np.ravel()

功能:一维度化

>>> x = np.array([[1, 2, 3], [4, 5, 6]])
>>> print(np.ravel(x))
[1 2 3 4 5 6]

np.zeros

功能:数组初始化为0
代码:

>>> a=np.zeros((3,2))
>>> a
array([[ 0.,  0.],
       [ 0.,  0.],
       [ 0.,  0.]])

np.argmin

功能:找到最小值得位置
代码:

>>> a=[5,1,2,3]
>>> np.argmin(a)
1
>>> b=[[4,2,3],[1,2,3]]
>>> np.argmin(b)
3

np.exp

>>>a=np.exp(2)
>>>a
7.3890560989306504

TensorFlow

tf.Variable

W = tf.Variable([.3],dtype=tf.float32)

说明:用tf.zeros()、tf.ones()等函数也是创建变量并初始化。

tf.reshape


# coding: utf-8

# In[2]:


import tensorflow as tf
import numpy as np


# In[3]:


a = [1,2,3,4,5,6,7,8,9]


# In[5]:


b = tf.reshape(a, [3,3])


# In[6]:


sess = tf.Session()


# In[7]:


print(sess.run(b))


# In[ ]:




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值