ახალი

შელფის გამოყენებით პითონში ობიექტების შესანახად

შელფის გამოყენებით პითონში ობიექტების შესანახად


We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

Shelve არის ძლიერი პითონის მოდული ობიექტის გამძლეობისთვის. ობიექტის დახურვისას უნდა მიუთითოთ კლავიში, რომლითაც ცნობილია ობიექტის მნიშვნელობა. ამ გზით, თაროების ფაილი ხდება შენახული მნიშვნელობების მონაცემთა ბაზაში, რომლის ნებისმიერი საშუალებით მისვლა ნებისმიერ დროს შეგიძლიათ.

სამოთხის ნიმუში კოდი პითონში

ობიექტის დასალაგებლად, პირველ რიგში შეიტანეთ მოდული და შემდეგ მიანიჭეთ ობიექტის მნიშვნელობა შემდეგნაირად:

იმპორტის თარო
მონაცემთა ბაზა = shelve.open (filename.suffix)
ობიექტი = ობიექტი ()
მონაცემთა ბაზა'key '= ობიექტი

თუ გსურთ შეინახოთ აქციების მონაცემთა ბაზა, შეგიძლიათ შეავსოთ შემდეგი კოდი:

იმპორტის თარო
stockvalues_db = shelve.open ('stockvalues.db')
object_ibm = Values.ibm ()
stockvalues_db'ibm '= object_ibm
object_vmw = Values.vmw ()
stockvalues_db'vmw '= ობიექტი_vmw
object_db = ღირებულებები.db ()
stockvalues_db'db '= ობიექტი_დბ

"საფონდო ღირებულებები. დბ" უკვე გახსნილია, აღარ გჭირდებათ მისი გახსნა. ამის ნაცვლად, შეგიძლიათ გახსნათ მრავალი მონაცემთა ბაზა, წეროთ თითოეულს სურვილისამებრ, და დატოვოთ პითონი, რომ დასრულდეს პროგრამა, როდესაც პროგრამა დასრულდება. მაგალითად, თქვენ შეგიძლიათ შეინახოთ სახელების ცალკეული მონაცემთა ბაზა თითოეული სიმბოლოსთვის, დაემატოს შემდეგი კოდი:

## ვარაუდობენ, რომ თაროზე უკვე იმპორტირებულია
stocknames_db = shelve.open ('stocknames.db')
objectname_ibm = სახელები.ibm ()
stocknames_db'ibm '= objectname_ibm
objectname_vmw = სახელები.vmw ()
stocknames_db'vmw '= objectname_vmw
objectname_db = სახელები.db ()
stocknames_db'db '= objectname_db

გაითვალისწინეთ, რომ მონაცემთა ბაზის ფაილის სახელის ან სუფიქსის ნებისმიერი ცვლილება წარმოადგენს სხვა ფაილს და, შესაბამისად, სხვა მონაცემთა ბაზას.

შედეგი არის მონაცემთა ბაზის მეორე ფაილი, რომელიც შეიცავს მოცემულ მნიშვნელობებს. თვით-სტილის ფორმატებში დაწერილი ფაილების უმეტესობისგან განსხვავებით, თაროების მონაცემთა ბაზა ინახება ორობითი ფორმით.

მას შემდეგ, რაც მონაცემები ფაილზე იქნება დაწერილი, მისი დაბრუნება ნებისმიერ დროს შეიძლება. თუ გსურთ მონაცემების აღდგენა მოგვიანებით სესიაზე, ხელახლა გახსენით ფაილი. თუ ეს იგივე სესიაა, უბრალოდ გაიხსენეთ მნიშვნელობა; მონაცემთა შენახვის მონაცემთა ფაილები იხსნება წაკითხვის-ჩაწერის რეჟიმში. ქვემოთ მოცემულია ძირითადი სინტაქსი ამის მისაღწევად:

იმპორტის თარო
მონაცემთა ბაზა = shelve.open (filename.suffix)
ობიექტი = მონაცემთა ბაზა '

ამრიგად, მაგალითიდან იკითხება წინა მაგალითი.

იმპორტის თარო
stockname_file = shelve.open ('stocknames.db')
stockname_ibm = stockname_file'ibm '
stockname_db = stockname_file'db '

მოსაზრებები შელფთან

მნიშვნელოვანია აღინიშნოს, რომ მონაცემთა ბაზა ღიაა მანამდე, სანამ დახურავთ (ან სანამ პროგრამა დასრულდება). ამიტომ, თუ თქვენ წერთ პროგრამას ნებისმიერი ზომით, გინდათ მონაცემთა ბაზის დახურვა მასთან მუშაობის შემდეგ. წინააღმდეგ შემთხვევაში, მთელი მონაცემთა ბაზა (არა მხოლოდ თქვენთვის სასურველი მნიშვნელობა) ჯდება მეხსიერებაში და მოიხმარს გამოთვლილ რესურსებს.

დახურვის ფაილის დახურვისთვის გამოიყენეთ შემდეგი სინტაქსი:

მონაცემთა ბაზა. დახურვა ()

თუ ზემოხსენებული ყველა კოდის მაგალითი ერთ პროგრამაში იყო ჩართული, ამ ეტაპზე ჩვენ გვექნებოდა მონაცემთა ბაზის ორი ფაილი გახსნილი და მეხსიერების მოხმარება. ასე რომ, წინა მაგალითში წაკითხვის საფონდო სახელების წაკითხვის შემდეგ, შემდეგ შეგიძლიათ დახუროთ თითოეული მონაცემთა ბაზა შემდეგნაირად:

stockvalues_db.close ()
stocknames_db.close ()
stockname_file.close ()


Video, Sitemap-Video, Sitemap-Videos