1、reshape函数的应用
import numpy as np z = np.array([[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12], [13, 14, 15, 16]]) z.shape print (z.shape) z = np.reshape(z,(-1)) print (z.shape) z = np.reshape(z,(2,-1))#当指定行数2之后,列数设置为-1为default,会在满足行数的情况下设置列数 print (z.shape)
打印结果:
(4, 4)
(16,)
( 2, 8)其它网上的做法达不到预期的效果,故留做备忘
2、字典使用(dictionary)
参考网站
#创建字典 #字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示: #d = {key1 : value1, key2 : value2 } #要点一个key可以对应多个value,反之一个value只能对应一个key #value可以取任何数据类型,但key必须是不可变的,如字符串,数字或元组。 dict = {'Name': 'xiaohui', 'Age': 7, 'Class': 'First',123:'hello'};#'Name'字符串 123数字 元组不知道是什么鬼 #通过key访问value print (dict['Name']) #xiaohui #通过key修改value dict['Age'] = 8 print (dict['Age']) #8 del dict['Name']; # 删除键是'Name'的条目 print (dict) #{123: 'hello', 'Class': 'First', 'Age': 8} #dict.clear(); # 清空词典所有条目 #del dict ; # 删除词典
3、dictionary和json转换
# coding= utf-8 import json import sys if __name__ == '__main__': # 将python对象test转换json对象 test = {"username":"测试","age":16}#其中username为key,测试 为value print ('test 类型:',type(test)) #test 类型:
print (test) #{'username': '测试', 'age': 16} python_to_json = json.dumps(test,ensure_ascii=False) print ('将python转换为json类型:',type(python_to_json)) #将python转换为json类型: print (python_to_json) #{"username": "测试", "age": 16} # 将json对象转换成python对象 json_to_python = json.loads(python_to_json) print ('将json转换为python类型:',type(json_to_python))#将json转换为python类型: print (json_to_python['username'])#根据key 获取value print ("输出所有的value:%s"%json_to_python.values())#输出所有的value:dict_values(['测试', 16]) print ("输出所有的key:%s"%json_to_python.keys()) #输出所有的key:dict_keys(['username', 'age']) 4、将dictionary中的key和value互换
dictionary = {'Name': 'xiaohui', 'Age': 7, 'Class': 'First','123':'hello',"0615":"生日快乐","出生年份":"1992"};#'Name'字符串 123数字 元组不知道是什么鬼 i = 123 print (str(i))#一个小的trick,输入元素i为123的时候,那么str(i)则为‘123’ print (dictionary[str(i)])#通过str(i)则可访问'123',否则会无法识别123报KeyError: 123 #print (dictionary[i])#报KeyError: 123 #将key和value互换 #方法一: dictionary_new1 = {value:key for key,value in dictionary.items()} print ('dictionary_new1:',dictionary_new1) #dictionary_new1: {'hello': '123', '1992': '出生年份', 'First': 'Class', 'xiaohui': 'Name', '生日快乐': '0615', 7: 'Age'} #方法二: dictionary_new2 = dict( zip( dictionary.values(),dictionary.keys() ) ) print ('dictionary_new2:',dictionary_new2) #dictionary_new1: {'hello': '123', '1992': '出生年份', 'First': 'Class', 'xiaohui': 'Name', '生日快乐': '0615', 7: 'Age'}
5、json文件的读取与保存
dictionary = {'Name': 'xiaohui', 'Age': 7, 'Class': 'First','123':'hello',"0615":"生日快乐","出生年份":"1992"} dictionary_json = json.dumps(dictionary,ensure_ascii=False)#ensure_ascii=False则表示输出真正的中文 print (dictionary_json) #{"出生年份": "1992", "123": "hello", "0615": "生日快乐", "Class": "First", "Name": "xiaohui", "Age": 7} #json.dump()函数的使用,将json文件保存 with open("./test.json","w",encoding='utf-8') as f: json.dump(dictionary_json,f) #./test.json文件内容如下 #"{\"\u51fa\u751f\u5e74\u4efd\": \"1992\", \"123\": \"hello\", \"0615\": \"\u751f\u65e5\u5feb\u4e50\", \"Class\": \"First\", \"Name\": \"xiaohui\", \"Age\": 7}" # json.load()函数的使用,将读取json信息 file = open('./test.json','r',encoding='utf-8') file_to_json = json.load(file) print(file_to_json) #{"出生年份": "1992", "123": "hello", "0615": "生日快乐", "Class": "First", "Name": "xiaohui", "Age": 7}
6、python的换行
print ()#print ()表示换一行 print('\n' *1)#print('\n' * n) n表示换几行;python3可以,python2不可以
7、list 相关的函数
extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。
aList = [123, 'xyz', 'zara', 'abc', 123];
bList = [2009, 'manni'];
aList.extend(bList)
print ("Extended List : ", aList)
#Extended List : [123, 'xyz', 'zara', 'abc', 123, 2009, 'manni']
8、python 的collections的使用
主要用于统计list的单词出现的频率
import collections
#申请list类型的变量
count = [['UNK', -1]]
print (type(count))#
print ('old count',count)#old count [['UNK', -1]]
words = ['笛', '岳','笛','笛','笛','笛','笛','笛','岳','岳','阳','阳','阳', '楼', '外', '天', '远', '霞', '红']
tt = collections.Counter(words) #统计单词列表重单词的频数
print (tt)#将统计结果打印出来,统计结果如下
#Counter({'笛': 7, '岳': 3, '阳': 3, '远': 1, '外': 1, '楼': 1, '霞': 1, '天': 1, '红': 1})
print (type(tt))#
print (tt['笛'])#打印莫个词重复的频数 7
most_common_tt = collections.Counter(words).most_common(3)#将统计单词列表重单词的频数中前3个赋给most_common_tt
print ('most_common_tt:',most_common_tt)#most_common_tt: [('笛', 7), ('阳', 3), ('岳', 3)]
9、python 的global
# coding= utf-8
global_variable = 0
def test_global():
global global_variable
print ('in the function test_global and before',global_variable)
global_variable = 10
print ('in the function test_global and after',global_variable)
print ('before function test_global',global_variable)
test_global()
print ('after function test_global',global_variable)
#输出如下:
#before function test_global 0
#in the function test_global and before 0
#in the function test_global and after 10
#after function test_global 10