This commit is contained in:
guanjihuan 2022-09-08 07:51:30 +08:00
parent 065dac58d7
commit d1b2c38642
4 changed files with 74 additions and 3 deletions

View File

@ -331,6 +331,8 @@ degenerate_k_array, degenerate_eigenvalue_array = guan.find_degenerate_points(k_
guan.batch_reading_and_plotting(directory, xlabel='x', ylabel='y') guan.batch_reading_and_plotting(directory, xlabel='x', ylabel='y')
guan.write_file_list_in_markdown(directory, filename='a', reverse_positive_or_negative=1, starting_from_h1=None, banned_type=[], divided_line=None, show_second_number=None, show_third_number=None)
guan.move_all_files_to_root_directory(directory) guan.move_all_files_to_root_directory(directory)
guan.change_directory_by_replacement(current_key_word='code', new_key_word='data') guan.change_directory_by_replacement(current_key_word='code', new_key_word='data')

View File

@ -1,7 +1,7 @@
[metadata] [metadata]
# replace with your username: # replace with your username:
name = guan name = guan
version = 0.0.128 version = 0.0.129
author = guanjihuan author = guanjihuan
author_email = guanjihuan@163.com author_email = guanjihuan@163.com
description = An open source python package description = An open source python package

View File

@ -1,6 +1,6 @@
Metadata-Version: 2.1 Metadata-Version: 2.1
Name: guan Name: guan
Version: 0.0.128 Version: 0.0.129
Summary: An open source python package Summary: An open source python package
Home-page: https://py.guanjihuan.com Home-page: https://py.guanjihuan.com
Author: guanjihuan Author: guanjihuan

View File

@ -2,7 +2,7 @@
# With this package, you can calculate band structures, density of states, quantum transport and topological invariant of tight-binding models by invoking the functions you need. Other frequently used functions are also integrated in this package, such as file reading/writing, figure plotting, data processing. # With this package, you can calculate band structures, density of states, quantum transport and topological invariant of tight-binding models by invoking the functions you need. Other frequently used functions are also integrated in this package, such as file reading/writing, figure plotting, data processing.
# The current version is guan-0.0.128, updated on September 07, 2022. # The current version is guan-0.0.129, updated on September 08, 2022.
# Installation: pip install --upgrade guan # Installation: pip install --upgrade guan
@ -2538,6 +2538,75 @@ def batch_reading_and_plotting(directory, xlabel='x', ylabel='y'):
x_array, y_array = guan.read_one_dimensional_data(filename=filename) x_array, y_array = guan.read_one_dimensional_data(filename=filename)
guan.plot(x_array, y_array, xlabel=xlabel, ylabel=ylabel, title=filename, show=0, save=1, filename=filename) guan.plot(x_array, y_array, xlabel=xlabel, ylabel=ylabel, title=filename, show=0, save=1, filename=filename)
def write_file_list_in_markdown(directory, filename='a', reverse_positive_or_negative=1, starting_from_h1=None, banned_type=[], divided_line=None, show_second_number=None, show_third_number=None):
import os
f = open(filename+'.md', 'w', encoding="utf-8")
filenames1 = os.listdir(directory)
u0 = 0
for filename1 in filenames1[::reverse_positive_or_negative]:
filename1_with_path = os.path.join(directory,filename1)
if os.path.isfile(filename1_with_path):
if os.path.splitext(filename1)[1] not in banned_type:
f.write('+ '+str(os.path.splitext(filename1)[0])+'\n')
else:
u0 += 1
if divided_line != None and u0 != 1:
f.write('\n--------\n\n')
if starting_from_h1 == None:
f.write('#')
f.write('# '+str(filename1)+'\n')
filenames2 = os.listdir(filename1_with_path)
i0 = 0
for filename2 in filenames2[::reverse_positive_or_negative]:
filename2_with_path = os.path.join(directory, filename1, filename2)
if os.path.isfile(filename2_with_path):
f.write('+ '+str(os.path.splitext(filename2)[0])+'\n')
else:
i0 += 1
if starting_from_h1 == None:
f.write('#')
if show_second_number != None:
f.write('## '+str(i0)+'. '+str(filename2)+'\n')
else:
f.write('## '+str(filename2)+'\n')
j0 = 0
filenames3 = os.listdir(filename2_with_path)
for filename3 in filenames3[::reverse_positive_or_negative]:
filename3_with_path = os.path.join(directory, filename1, filename2, filename3)
if os.path.isfile(filename3_with_path):
f.write('+ '+str(os.path.splitext(filename3)[0])+'\n')
else:
j0 += 1
if starting_from_h1 == None:
f.write('#')
if show_third_number != None:
f.write('### ('+str(j0)+') '+str(filename3)+'\n')
else:
f.write('### '+str(filename3)+'\n')
filenames4 = os.listdir(filename3_with_path)
for filename4 in filenames4[::reverse_positive_or_negative]:
filename4_with_path = os.path.join(directory, filename1, filename2, filename3, filename4)
if os.path.isfile(filename4_with_path):
f.write('+ '+str(os.path.splitext(filename4)[0])+'\n')
else:
if starting_from_h1 == None:
f.write('#')
f.write('#### '+str(filename4)+'\n')
filenames5 = os.listdir(filename4_with_path)
for filename5 in filenames5[::reverse_positive_or_negative]:
filename5_with_path = os.path.join(directory, filename1, filename2, filename3, filename4, filename5)
if os.path.isfile(filename5_with_path):
f.write('+ '+str(os.path.splitext(filename5)[0])+'\n')
else:
if starting_from_h1 == None:
f.write('#')
f.write('##### '+str(filename5)+'\n')
f.close()
def move_all_files_to_root_directory(directory): def move_all_files_to_root_directory(directory):
import os import os
import shutil import shutil