输入输出保存函数
Python
输入input函数
name = input("请输入您的姓名:")
print("您好," + name + "!") #使用+连接字符串,则输出的没有空格,用逗号则会有
#输入多个
a, b, c = input('输入a,b空格隔开:').split()
print(type(a))
print(type(b))
print(type(c))
>>>
输入a,b,c空格隔开:1 2 3
<class 'str'>
<class 'str'>
<class 'str'>
#以上的输出是字符串类型,若需要是整数类型
a, b, c = map(int, input('输入a,b,c用空格隔开:').split())
print(type(a))
print(type(b))
print(type(c))
>>>
输入a,b,c用空格隔开:1 2 3
<class 'int'>
<class 'int'>
<class 'int'>
输出print函数
# 输出多个值
name = "Alice"
age = 30
print("My name is", name, "and I am", age, "years old.")#有空格
print("My name is"+name+"and I am"+age+"years old.")#紧密相连
### 指定分隔符
print("1", "2", "3", sep="-")
##其实无论单引号还是双引号,大多数情况都是通用的,两个都可以,但还是建议都用单引号
# print(f'')的用法
T= time.time()-T0
print(f"\n Total time elapsed : {T} s")
##
a = 1
b = 2
c = 3
print(f'a={a}, b={b}, c={c}')
# 等价于print('a={}, b={}, c={}'.format(a, b, c))
结果:
a=1, b=2, c=3
打开载入文件
1.内置函数 open函数
若原文件名不存在,则创建该文件
f = open(filename, mode = ‘r’, buffering = -1)
## mode为可选参数,默认值为r( r:读,w:写(先清空文件),a: 追加)
在打开文件的基础上,有读和写入函数 f.read(), f.write(),f.close()——对象名.方法名
with open('data.txt','w') as f:
f.write("Hello,番茄大人")
with open('data.txt') as f:
p1 = f.read(5)#读前5个字符
p2 = f.read()#读剩下的字符
>>
'Hello'
',番茄大人'
这个和h5py函数很类似
##同样不存在则创建,同样有mode三个参数,同样有对应的f.create_group,f.create_dataset等函数
with h5py.File("Cifar.h5", 'a') as f:
vs_group1 = f.create_group("train") # 在根目录下创建gruop文件夹:trains
hf.close()
2.numpy库函数 np.load
#读取数组数据, .npy文件
ar_load = np.load('arraytest.npy')
print(ar_load)
#也可以直接np.load(r'C:\python数据分析\arraytest.npy')
或者
res_data1 = np.load(file="datasp_total.npy")
保存文件
np.save函数 numpy学习(五)——文件的保存和读写(np.save()、np.load()、np.savez()、np.savetxt()、np.loadtxt())_徕胖的博客-CSDN博客
np.save(file, arr)
#file 要保存的文件名称,需指定文件保存路径,如果未设置,保存到默认路径。其文件拓展名为.npy
#arr 为需要保存的数组,也即把数组arr保存至名称为file的文件中。
如果你想将多个数组保存到一个文件中的话,可以使用numpy.savez函数
ar1 = np.random.rand(2,3)
ar2 = np.arange(4)
np.savez(r'C:\python数据分析\arraytest1.npz',ar1,ar2)
#savez函数输出的是一个压缩文件(扩展名为npz),其中每个文件都是一个save函数保存的npy文件,文件名对应于数组名。
r = np.load(r'C:\python数据分析\arraytest1.npz')
print(r)
print(r['arr_0'])
#load函数自动识别npz文件,并且返回一个类似于字典的对象,可以通过数组名作为关键字获取数组的内容。
MATLAB
输入函数 input
MATLAB的输入与输出函数_matlab输入函数_zhangjemm的博客-CSDN博客
由于 MATLAB不使用 stdin 和 stdout,而是使用command window进行交互。因此不需要使用 scanf 和 printf 等 C/C++ 函数来提示用户进行输入。但在某些情况下需要提示用户进行输入并打印相关结果时,可使用如下函数
a = input(''); %不含提示的单个数值输入
a = input('Please input a number:'); %含提示的单个数值输入
a = input('', 's'); %不含提示的字符串输入
a = input('Please input a string:', 's'); %含提示的字符串输入
a = input('', 's'); %以字符串读入
a = str2num(a); %将字符串转化为一维向量,方便后续处理
#num2str也很常用,经常在disp函数中用到
输出函数 disp
disp()函数表示显示变量的值,对于单个数值、字符串、数组、矩阵都按照其格式显示
A=[1 2;3,4];
disp(A)
>>
1 2
3 4
A = 'Hello World ! ';
disp(A)
>> Hello World !
toc = 100;
disp(['Modified Gerchberg-Saxton iteration end! ... Elapsed time: ', num2str(toc),'s'])
##这里必须要有中括号,不然会报错
另外还有 fprintf
fprintf()函数 为格式化输出函数
a = 3.1415926;
fprintf('PI is %.5f.\n', a);
>>
pi is 3.14159.
载入函数 load
load(filename,variables)
load('file.mat',y) %仅加载文件中的y变量
%当然,还可以使用命令语法来 load
load file.mat y
保存函数 save
save example %则会把当前目录中的变量全部保存到example.mat 文件
save example x y z %指定xyz保存
当然不用命令语法也行
save(‘D:\\example.mat’)
自定义函数
Python自定义函数
def load_dataset(file_location,what_to_load): hf = h5py.File( file_location , 'r') fl = hf[what_to_load] Rarray = np.array(fl) hf.close() return Rarray
Matlab自定义函数
function K = RPS1(channels,modes)
T0=randn(channels,modes)+1i*randn(channels,modes);
[U,S,V]=svd(T0);
SM = max(max(S));
K=T0/SM;
end
工具包与函数库
python函数库,比如下面图中的几种最常用的,除了Python内置函数,这些库函数提供更快捷的编程功能。
Matlab中的函数也是通过工具包toolbox来提供的,下载的matlab软件会自带一些toolboxMATLAB工具箱介绍_matlab 工具箱简介-CSDN博客,比如Image Processing Toolbox——Image Processing Toolbox Documentation - MathWorks 中国,常用的imread等函数就是里面的。当然你也可以下载新的toolbox来方便你的编程实现特定的功能。