208
208
import numbers
209
209
210
210
import sage .rings .abc
211
+
212
+ from sage .misc .lazy_import import lazy_import
211
213
from sage .rings .infinity import Infinity
212
214
from sage .rings .integer import Integer
213
215
from sage .rings .integer_ring import ZZ
214
216
from sage .structure .richcmp import rich_to_bool , richcmp_method
215
217
from sage .structure .sage_object import SageObject
216
218
219
+ lazy_import ('sage.combinat.words.abstract_word' , 'Word_class' )
220
+ lazy_import ('sage.combinat.words.finite_word' , 'FiniteWord_class' )
221
+ lazy_import ('sage.combinat.words.infinite_word' , 'InfiniteWord_class' )
222
+ lazy_import ('sage.combinat.words.word' , 'Word' )
223
+
224
+
217
225
ZZ_0 = Integer (0 )
218
226
ZZ_1 = Integer (1 )
219
227
ZZ_m1 = Integer (- 1 )
@@ -2661,7 +2669,6 @@ def continued_fraction(x, value=None):
2661
2669
pass
2662
2670
2663
2671
# input for finite or ultimately periodic partial quotient expansion
2664
- from sage .combinat .words .finite_word import FiniteWord_class
2665
2672
if isinstance (x , FiniteWord_class ):
2666
2673
x = list (x )
2667
2674
@@ -2675,12 +2682,10 @@ def continued_fraction(x, value=None):
2675
2682
return ContinuedFraction_periodic (x1 , x2 )
2676
2683
2677
2684
# input for infinite partial quotient expansion
2678
- from sage .combinat .words .infinite_word import InfiniteWord_class
2679
2685
from sage .misc .lazy_list import lazy_list_generic
2680
2686
if isinstance (x , (lazy_list_generic , InfiniteWord_class )):
2681
2687
return ContinuedFraction_infinite (x , value )
2682
2688
2683
- from sage .combinat .words .abstract_word import Word_class
2684
2689
if isinstance (x , Word_class ):
2685
2690
raise ValueError ("word with unknown length cannot be converted "
2686
2691
"to continued fractions" )
0 commit comments