python进行数学计算,有其独特的地方。本文,介绍一下Python的数学运算和数学函数方面的基础知识。以下是小编为你整理的python自学教程
先进行几个运算:
5/2*3+9
8*9-5/6
这两个算式,可以直接粘贴到python代码编译器里面,但是运行之后,没有输出结果。
其实,python已经运算了这个式子了,只不过没显示结果。
用print可以显示运算结果。
print(5/2*3+9)print(8*9-5/6)
如果我们想要看到一个完整的算式,需要把算式以字符串的形式返回。
print("5/2*3+9"+str(5/2*3+9))print("8*9-5/6"+str(8*9-5/6))
注意:
"5/2*3+9"就是一个字符串的形式,在英文输入法的双引号里面;
str(5/2*3+9)是对算式进行计算,并把计算结果转化为字符串;
+的作用是连接字符串。
基本运算
加减乘除的运算,和平常的一样:
print("5+6="+str(5+6))print("5/6="+str(5/6))print("5*6="+str(5*6))print("5-6="+str(5-6))
乘方运算2^100,在python里面,写为2**100:
print("2^100 = " + str(2**100))print("5^10 = " + str(5**10))
求余数,用%实现:
print("100除以5的余数是" + str(*5))print("100除以90的余数是" + str(*90))
注释的运用# 注释:不参与程序运行,作用是给给看代码的人一些提示。
# 我是一个大帅哥,这行是一行注释,#号后面的表示注释
"""
多行注释
多行注释
多行注释
"""
# 一般情况下注释都直接使用#号的形式
# 在正常开发中,三个引号对的注释形式一般是作为对整个文件的说明出现在文# 件的顶部
# 针对某一行代码的注释,可以放在代码语句的上面,也可以放在代码的后面
print(1801) # 系统提供的展示(打印,输出)功能
print(666) #
print() #默认以换行结尾
print(100-6) # 可以直接进行数学运算,打印结果就是运算结果
print(10086, 10+6) # 可以同时打印多个内容,多个内容之间用逗号隔开
print(1801, 3+6, 4+7) # 打印结果里,多个内容之间会默认有一个空格
# 单引号对和双引号对是等价的
print('**************分割符******************')
print('good.123我爱*') # 引号引起来的叫字符串,单个字符也是字符串
print('love',end=' ') # end=''设置打印结尾的内容,默认是换行(n)
print('****')
print('good morning', 666, '早上好', 4+6) # 字符串和数字可以混合打印
print('3+6') # '3+6'这是一个字符串,包含3个字符:3+6 不是数学运算
# 有些特殊的字符需要使用转义字符(),转义字符本身也是特殊字符print('我n的'身高'是"18\0')print(r'我n的'身高'是"18\0') # 如果字符串以r开头,那么这个字符串中所# 有的转义字符全部失效。print('good' * 3) # 字符串可以和数字相乘,得到重复的字符串print('*'*10, '分割符', '*'*10)print('good' + 'morning', 666) # 字符串可以和字符串相加,得到一个拼接的字符串print('*'*20 + '分割符' + '*'*20)
请勿将代码复制直接使用,可能出现中英文格式错误,请读者手打练习。
导入numpy模块
在python IDE导入numpy模块,我用的是自带解释器
>>> import numpy as np
>>> np.array([1,2,3,4]) #通过array函数创建数组
array([1, 2, 3, 4])
>>> c=np.array([[1,2,3,4],[4,5,6,7],[7,8,9,10]])#二维数组,第0轴长度为3,第1轴长度为4,也就分别相当于矩阵的行数和列数
>>> c
array([[ 1, 2, 3, 4],
[ 4, 5, 6, 7],
[ 7, 8, 9, 10]])
>>> c.shape#数组的形状可以通过其shape 属性获得,它是一个描述数组各个轴长度的元组(tuple)
(3L, 4L)
3
>>> np.arange(0,1,0.1)#arange()函数指定了开始值、终值和步长创建等差数列的一维数组,注意不包含终值。
array([ 0. , 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9])
4
>>> np.linspace(0,1,10)#指定开始值、终值和元素个数创建等差数列的一维数组,通过endpoint参数指定是否包含终值,默认为Ture,即包含终值
array([ 0. , 0.11111111, 0.22222222, 0.33333333, 0.44444444,
0.55555556, 0.66666667, 0.77777778, 0.88888889, 1. ])
>>> np.logspace(0,2,5)#logspace和linspace类似,区别在于它创建的是等比数列,起始值为10^0,而终值为10^2
array([ 1. , 3.16227766, 10. , 31.6227766 , 100. ])
python序列
list (表)
l =[1,2,5,6] # 序列元素的下标从0开始: # tuple元素不可赋值 # 基本样式[下限:上限:步长] print(l[1]) # 2 print(l[0:3:2]) # [1, 5] print (l) #[1, 2, 5, 6] # list元素是可以改变的 l[1]=3 print(l) #[1, 3, 5, 6] #insert在list指定位置插入项目,如在list*个位置插入2 l.insert(1,2) print (l) #[1, 2, 3, 5, 6] # append在list末尾添加一个项目 l.append(7) print (l) #[1, 2, 3, 5, 6, 7] # pop移除给定位置的项目 l.pop(3) print (l) #[1, 2, 3, 6, 7] # pop()移除*的项目 l.pop() print (l) #[1, 2, 3, 6] # 删除指定的项目,不是项目位置 l.remove(2) print (l) #[1, 3, 6] # 升序排序 l.sort(reverse=True) print (l) #[6, 3, 1] # 降序排序 l.sort(reverse=False) print (l) #[1, 3, 6] # 项目前后顺序反过来 l.reverse() print(l) #[6, 3, 1]
tuple (表)
t1=() # 1个元素的tuple定义时必须加一个逗号, print (t1) # 输出() t2=(1,) print (t2) # 输出(1,) t3=(1,3,5,6) print (t3) # 输出(1, 3, 5, 6) # 计算元组元素个数 print(len(t3)) # 输出 4 # 序列元素的下标从0开始: # tuple元素不可赋值 # 基本样式[下限:上限:步长] print(t3[2:]) # 从下标2开始到* 输出(5, 6) print(t3[0:3:2]) # 从下标0开始到下标3(即下标0和下标2),步长为2 输出(1, 5) # 返回元组中元素*值 print(max(t3)) # 输出 6 # 返回元组中元素最小值 print(min(t3)) # 输出 1 # tuple是不可变的,但tuple里的list可变 t4=(1,2,3,[4,5]) t4[3][0]=7 t4[3][1]=8 print(t4) # 输出(1, 2, 3, [7, 8]) # tuple不可变但可以增加新的部分 t1=t2+t3 print (t1) # 输出(1, 1, 3, 5, 6) # 将列表转换为元组 l=[1,2,3] print(tuple(l))# 输出 (1, 2, 3)