关于单引号和双引号
当输出的字符串内部没有单引号的时候,外面可以用单引号, 但是如果内部有了单引号,那么外部只能用双引号。
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print(dict)
print ('dict[Name]: ', dict['Name'])
print ("dict['Age']: ", dict['Age'])
关于for循环
首先我们要知道 [1,2,3] 这样,其实你是定义了一个list,关于list就像是C++STL里面的vector,可以append,只不过这里比他更强大的是,可以append各种类型的东西。
回归正题,对于for循环遍历,也是可以遍历一个list中的所有元素的,那么关于遍历的时候,就有了两种写法,下面分别介绍一下:(下面代码中的两种方式都是可以的)
fruits = ['banana', 'apple', 'mango']#方法1
for fruit in fruits:print(fruit)#方法2
for i in range(len(fruits)):print(fruits[i])
numpy中np.array()与np.asarray的区别
array和asarray都可以将结构数据转化为ndarray,但是主要区别就是当数据源是ndarray时,array仍然会copy出一个副本,占用新的内存,但asarray不会。(所以一般都用array,因为他是真正的深复制)
具体区别可以看:链接
注意针对只有一个元素的情况时,1和1,的区别
这两者是一样的,都是int: (1) 1
这两者是一样的,都是tuple: (1,2,3) 1,2,3
要是想创建一个只有一个元素的元组,那么需要在数字后面加逗号,比如这样:
python中tuple、list以及array(numpy的数据格式)的相互转换
python中常常需要实现tuple、list以及array数据类型之间的转换,因为三者各有优势,tuple可以保证数据不易被修改;处理数据时,array数据类型可以方便地调用numpy包中的函数进行数据处理,比如:求距离,最大值,平均值等常见操作;list可以方便的调用很多函数,比如添加一个元素(append)等等。
如果转换还是很方便的,只需要分别使用:
numpy包内的函数np.array(),将任意类型转换成array
内置函数tuple()和list()也可以将任意类型转成对应的数据类型。
这里注意的是,np.array(被转换的变量,dtype=数据类型)
可以通过dtype属性指定元素的数据类型
注意np.mat()和np.matrix()的区别
两者只在传入的参数是矩阵的时候有区别,其中前者是直接引用,后者是进行深复制。
列表中冒号的用法([][:][::]的区别),列表切片详解
没有冒号:
其实就是[0,1]直接就是取第0行与第1列的交点值
一个冒号:
[x : ] 代表列表中的索引的第x项到最后一项
[ : y] 代表列表中的第一项到索引第y+1项(也就是到第y项但是左闭右开)
两个冒号:
list[start:end:step]
start:起始位置
end:结束位置
step:步长
在保存图像的时候需要注意:
使用plt.savefig(‘a.jpg’)保存图片注意,一定要在plt.show()之前,plt.show()之后plt就成为一个空白图像了,输出路径时要用/,用反斜杠的话会报错
在Python3.0及以后版本中,' / ' 和 ' // ' 运算符的区别
看下图就明白了。(运行环境Python3.7.4)
为了python简明的特征,int和int的除法,就不需要先强转成float了。
查看变量占用内存大小
import sys
a = [x for x in range(1000)]
print( sys.getsizeof(a) )
出现说语法格式不正确的错误
当出现IndentationError: unindent does not match any outer indentation level这种错误的时候,但是空格都对齐了,这可能说明空格的格式不正确,所以你把所有的空格删掉,再自己手动TAB一遍就可以了。
比如下面这段在spyder上是对齐的:
但是实际拷贝出来:
for i in range(length):x.append(f"{station_info_dict['result']['buslines'][0]['busstops'][i]['location']}".split(",")[0])y.append(f"{station_info_dict['result']['buslines'][0]['busstops'][i]['location']}".split(",")[1])plots_name.append(f"{station_info_dict['result']['buslines'][0]['busstops'][i]['name']}")
20200314
numpy.prod()函数
这个函数是连乘操作,将里面所有的元素相乘。
比如:a = numpy.array([1,2,3,4])
那么:numpy.prod(a) = 24
还有:numpy.prod(a[2:3]) = 3
同理:numpy.prod(a[1:3]) = 6
20200504
注意每次运行代码之前要清空已有变量!尤其是使用spyder这种工具的时候。
20200504
注意多用切片那种形式获取数据
比如你要获取'hello'这个str的前三个字符这个子串,别再一个一个字符的append了,直接str[:3]就好了。提高效率和可读性。
20200504
查看x是否存在于list中
theList = ['a','b','c']
if 'a' in theList: print ('a in the list')