更改檔案,某一行

2022-05-06 06:18:10 字數 3528 閱讀 7897

1

deffetch(data):

2print('

這是查詢功能')

3 tag =false

4 data = '

aaaa %s\n

'%data

5 res_data =

6 with open('

bbb','

r',encoding='

gbk'

) as file:

7for i in

file:

8if i ==data:

9 tag =true

10continue

11if tag == true and i.startswith('

aaa'

):12

break

13if tag ==true:

1415

print

(i)16

return

res_data

17def

add():

18pass

19def

delete():

20pass

21def

change(data):

22print('

你要更改的資料是%s

'%data)

23 old_addr =data[0]['

backend']

24 old_to = "

server %s 98798 %s\n

"%(data[0]['

record

']['

server

'],data[0]['

record

']['

98798'])

25 need_to = "

server %s 98798 %s\n

"%(data[1]['

record

']['

server

'],data[1]['

record

']['

98798'])

26 res =fetch(old_addr)

27print

(res)

28if old_to in

res:

29 a =res.index(old_to)

30 res[a] =need_to

31 res.insert(0,'

aaaa %s\n

'%old_addr)

32 tag =false

33 write_or =true

34 old_addr2 = '

aaaa %s

'%old_addr

35 with open('

bbb','r'

) as old_file,\

36 open('

bbb_new

','w

') as new_file:

37for backend in

old_file:

38if backend.strip() ==old_addr2:

39 tag =true

40continue

41elif backend.startswith('

aaaa'):

42 tag =false

43if

nottag:

44new_file.write(backend)

45if tag and

write_or:

46for i in

res:

47new_file.write(i)

48 write_or =false

4950

else:51

print('

沒有要修改的資料')

52return

'更改成功'53

54if

__name__ =="

__main__":

55 msg = '''

561:查詢

572;增加

583:刪除

594:更改

605:退出

'''61 func_list =

67while

true:

68print

(msg)

69 choice = input("

請輸入需要選擇的功能:")

70if

not choice: continue

71if choice =='

5':break

72 data = input('

請輸入資料:')

73if choice != '1'

:74 data =eval(data)

75 ress =func_list[choice](data)

76print

(ress)

77輸出:

78 1:查詢

79 2;增加

80 3:刪除

81 4:更改

82 5:退出

83 請輸入需要選擇的功能:4

84 請輸入資料:[},}]

85 你要更改的資料是[}, }]

86這是查詢功能

87 server jdfjsk 98798sajdfkjahskjf

8889 server jdfjsdsk 98798sajdfksasjahskjf

9091 server jdfsdjsk 98798sajdfksdjahskjf

9293 server jdfxcjsk 98798sajdfkjsaahskjf

9495 server jdfjsxck 98798sajdfkxxzjahskjf

9697 ['

server jdfjsk 98798 sajdfkjahskjf\n

', '

server jdfjsdsk 98798 sajdfksasjahskjf\n

', '

server jdfsdjsk 98798 sajdfksdjahskjf\n

', '

server jdfxcjsk 98798 sajdfkjsaahskjf\n

', '

server jdfjsxck 98798 sajdfkxxzjahskjf\n']

98 none

python刪除某一行

整理了網路上的一些方法,一般有兩種方法 第一種 是先把檔案讀入記憶體,在記憶體中修改後再寫入原始檔。例子 將內容包含 123 的所有行刪去 with open c users lai desktop 1.txt r as r lines r.readlines with open c users l...

MFC修改list某一行

指定改變listctrl中某一行的顏色,比如說剛新增進去的一行,讓它改變顏色,這樣記錄多了,容易看到自己剛剛加如的行,方便操作可檢視,也可以讓新增和修改的記錄顯示不一樣的顏色,方便的多了,vc自帶的沒有這種功能。1 首先從clistctrl 繼承乙個類,命名為cmylistctrlnew 在標頭檔案...

vim 跳轉到某一行

一般跳轉到某一行可以先輸入 然後在命令列中輸入行號然後按回車 123 命令列模式 或者 123g 非命令列模式 可以利用以下命令將回車鍵對映為g,這樣可以在非命令列模式下面使用123就能跳轉到123行,相對於g來說要方便不少。nnoremap g 如果沒有進行這種對映,123g在命令列模式下的含義是...