python - 如何在 Python 中正确写入文本文件?
问题描述
所以我有一个代码,我需要在其中写入这样的文件。
def f():
f.write(anothervar)
f.write("\t \t \t \t <------------------ Written from function f ")
f.write('\n')
def g
f():
f.write(somevar)
f.write("\t \t \t \t <------------------ Written from function g ")
f.write('\n')
但是,当显示文本文件时,它看起来像这样(代码被剪断)
HELLO WORLD <------------------ Written from function g
HELLO WORLD MORE BIG BIGGER <------------------ Written from function f
HELLO WORLD BIGGEST HAHAHAHAHAHAHAHAHHA <------------------ Written from function f
我希望每一个<--- written from function g/h
都写得完全正确。我怎样才能做到这一点?从我的想法来看,我可以在写完 hello world 后测量每一行的长度,然后减去并做数学运算,但这似乎很难,而且我不知道有任何函数可以测量行中的 chr。我需要简短的代码。
解决方案
您可以获取字符串长度以获取插入多少空间,或使用 srt.rjust。
def adjust(string, function):
left, right = 20, 40
tag = '<'+'-'*(15-len(function))+' write from function ' + function
print(string.ljust(left, ' ') + tag.rjust(right, ' '))
text = ['Good Morning !', 'Are you ready', 'How about', 'Test']
func = ['get', 'get', 'post', 'delete']
for t, f in zip(text, func):
adjust(t, f)
Good Morning ! <------------ write from function get
Are you ready <------------ write from function get
How about <----------- write from function post
Test <--------- write from function delete
推荐阅读
- c# - c#在推送之前检查堆栈中的最后一项是否等于X?
- python - tensorflow对象检测...python model_main_tf2.py --model_di ....命令导致错误utf-8
- java - 可扩展性的不同场景
- java - Android studio onDraw 不使用更新的值
- python - Python:for循环中的geopy.distance.geodesic
- python - 关于python pyautogui(自动鼠标宏)的问题
- typescript - Postgres 多对多表:@JoinTable、“关系的拥有方”和“ON UPDATE CASCADE ON DELETE CASCADE”是什么意思?
- python - 一个表达式/函数来预测循环是否会永远运行
- rust - 将 rust 模块拆分为多个文件
- .htaccess - .htaccess 隐藏特定文件夹