失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > ANSYS Fluent UDF Manual R2

ANSYS Fluent UDF Manual R2

时间:2022-09-29 09:14:01

相关推荐

ANSYS Fluent UDF Manual R2

【实例简介】ANSYS Fluent R2官方帮助文档,用户定义函数(udf)允许您自定义ANSYS Fluent,并可以显著提高其功能。ANSYS Fluent UDF手册介绍了如何在ANSYS Fluent中编写、编译和使用UDF的详细信息。

文件:/f/25127180-489511049-0b79f2(访问密码:551685)

【实例截图】

以下内容无关:

-------------------------------------------分割线---------------------------------------------

利用python代码写一个很low的软件,去操作文件。

文件路径:path

打开方式:读,写,追加,读写,写读…

编码方式:utf-8,gbk ,gb2312…

f1 = open(‘d:\联系方式.txt’, encoding=‘utf-8’, mode=‘r’)

content = f1.read()

print(content)

输出:

练习方式:123456

open:内置函数,open底层调用的是操作系统的借口。

f1是变量,也叫文件句柄。对文件进行的任何操作,都得通过文件句柄。

encoding:可以不写,不写参数,默认的编码本:操作系统默认的编码

Windows:gbk

Linux:utf-8

mac:utf-8

f1.close():关闭文件句柄,不然会一直占用内存。

文件操作三部曲

打开文件

对文件句柄进行相应的操作

关闭文件

报错原因:

UnicodeDecodeError:文件储存时与文件打开时编码运用不一致。

第二个错误:路径分隔符产生的问题:加个 r

r’C:\Users\YS\Desktop\联系方式.txt’

文件操作的读

(1)r 模式:读取得数据类型是 str ,操作的是文本文件

read(n) :读几个字符 ,n不写默认全读

复制代码

f = open(‘文件的读.txt’,encoding=‘utf-8’)

content = f.read(5)

print(content)

f.close()

输出

读读读读

复制代码

readline():读几行,写几遍,读几行

复制代码

f = open(‘文件的读.txt’,encoding=‘utf-8’)

print(f.readline())

print(f.readline())

print(f.readline())

f.close()

输出

读读读读

aaaa

ABCD

复制代码

readlines():返回一个列表,列表中的每个元素是源文件的每一行。

复制代码

f = open(‘文件的读.txt’,encoding=‘utf-8’)

content = f.readlines()

print(content)

f.close()

输出

[‘读读读读\n’, ‘aaaa\n’, ‘ABCD\n’, ‘!@#¥’]

复制代码

for 读取,和 for 循环 readlines 一样的输出效果

但是 for 读取始终占用一行的内存,对于大数据的读取 readlines 因为他会生成一个字典,会一下把内存给占满(几十个G的数据)

复制代码

f = open(‘文件的读.txt’,encoding=‘utf-8’)

for lin in f:

print(lin)

f.close()

输出

读读读读

aaaa

ABCD

!@#¥模式

复制代码

(2)rb模式:

操作的是非文本的文件,图片,视频,音频。rb 模式读取的数据类型为 bytes

读取方式和 r 是样的read(),readline(),readlines(),for

复制代码

f = open(‘LOL.png’,mode=‘rb’)

conten = f.read() # 方式和 r 模式是一样的

print(conten)

f.close()

输出的是bytes数据格式

b’\x89PNG\r\n\x1a\n…’

复制代码

文件操作的写

(1)w 模式:

有关写(w)的清空的问题:关闭文件句柄,再次以 w 模式打开此文件时才会清空

write()

复制代码

没有文件,创建文件,写入内容,在当前目录下。

f = open(‘文件的写’, encoding=‘utf-8’, mode=‘w’) # ’文件的写‘为文件名

conten = f.write(‘随便写一点。。。’)

f.close()

如果文件存在,先清空原文件内容,在写入新内容

f = open(‘文件的写’, encoding=‘utf-8’, mode=‘w’)

conten = f.write(‘多写一点。。。’)

f.close()

复制代码

(2)wb 模式,操作非文本文件

复制代码

f = open(‘LOL.jpg’, mode=‘rb’)

content = f.read() # 先获取一个bytes格式的数据

f.close()

没有文件,创建文件,写入内容 写入数据格式为bytes(非Unicode编码)在当前目录下

f1 = open(‘LOL2.jpg’, mode=‘wb’)

content1 = f1.write(content)

f1.close()

复制代码

文件操作的追加

(1)a 模式

没有文件创建文件,追加内容,有文件就直接在原文件的最后面追加。

f = open(‘文件的追加’, encoding=‘utf-8’, mode=‘a’)

content = f.write(‘追加一点。。。。’)

f.close()

文件操作的其他模式

(1)r+ 模式:文件的读和写,先读后写,读一个光标往后移一个,写在最后面光标所在的位置,(读并追加)

读并追加 顺序不能错,不能创建

f = open(‘文件的读写’,encoding=‘utf-8’,mode=‘r+’)

content = f.read() # 先读

print(content)

f.write(‘随便写一点。。。’) # 后追加

文件操作的其他功能

总结:

三个大方向:

读,四种模式: r rb r+ r+b

写,四种模式: w wb w+ w+b

追加:四种模式:a ab a+ a+b

相应的功能:对文件句柄的操作:read,raed(n),readline(),readlines(),write()

tell():方法获取光标的位置,单位是字节。

复制代码

f = open(‘文件的读写’, encoding=‘utf-8’)

print(f.tell()) # 获取读之前光标所在的位置为 0

content = f.read() # 读,读一个字符光标往后移一个字符

print(f.tell()) # 获取读之后光标所在的位置为 30

print(content)

输出

0

30

随便写一点点点点点点

复制代码

seek():调整光标的位置

复制代码

f = open(‘文件的读写’,encoding=‘utf-8’)

f.seek(6) # 把光标的位置调整到第6个字节

print(f.tell()) # 获取光标的位置为为6

content = f.read() # 从光标调整的位置开始读:写一点点点点点点

print(f.tell()) # 获取光标读之后的位置为30

输出

6

30

写一点点点点点点

复制代码

flush:强制刷新,相当于保存。

f = open(‘文件的读写’, encoding=‘utf-8’, mode=‘w’)

content = f.write(‘追加一点。。。。’)

f.flush() # 保存一下,Python会自动保存,有些不会

f.close() # 退出

打开文件的另一种方式

with open():

优点1:不用手动关闭文件句柄,会在一定时间关闭

优点2:可以一个语句操作多个文件句柄,一个with可以操作多个open

with open(‘文件的读’, encoding=‘utf-8’) as f1, \

open(‘文件的追加’, encoding=‘utf-8’, mode=‘a’) as f2:

print(f1.read())

print(f2.write(‘追加一点。。’))

\代表这一行代码没有完从下一行开始

文件操作的改

现存所有的软件对文件修改都是经历这五步(底层)

以读的模式打开原文件

以写的模式创建一个新文件。

将原文件的内容读出来修改成新内容,写入新文件。

将原文件删除。内存级别

将新文件重命名成原文件

low版的,因为用的是 read() 只针对小的文件,大的文件 read() 读的时候就会把内存占满(一次全读)

复制代码

import os

with open(‘文件的改’, encoding=‘utf-8’) as f1, \ # 读取要读取的文件

open(‘文件的改.txt’, encoding=‘utf-8’, mode=‘w’) as f2: # 新建一个新文件

low = f1.read() # 读取

content_low = low.replace(‘Python’, ‘PHP’) # 修改读取的文件内容

content_new = f2.write(content_low) # 修改后写入新文件

os.remove(‘文件的改’) # 删除原文件

os.rename(‘文件的改.txt’, ‘文件的改’) # 把新文件改成原文件的名字

复制代码

进阶版。for 每次循环读取每一行的值,只占用当前一行的内存,占用资源少。

复制代码

import os

with open(‘文件的改’, encoding=‘utf-8’) as f1, \ # 读取要改的文件

open(‘文件的改.txt’, encoding=‘utf-8’, mode=‘w’) as f2: # 新建一个文件

for low in f1: # for 循环读取要改文件的每一行

content_new = low.replace(‘Python’, ‘PHP’) # 每循环一行修改一行

f2.write(content_new) # 修改后的每一写入新文件

os.remove(‘文件的改’) # 删除原文件

os.rename(‘文件的改.txt’, ‘文件的改’) # 把新文件改成原文件的名字

如果觉得《ANSYS Fluent UDF Manual R2》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。