Это еще один способ ... (с ограниченным диапазоном)
public static String numToWord (Integer i) {final String [] units = {"Zero", "One", " «Три», «Четыре», «Пять», «Шесть», «Семь», «Восемь», «Девять», «Десять», «Одиннадцать», «Двенадцать», «Тринадцать», «Четырнадцать», «Пятнадцать», «шестнадцать», «семнадцать», «восемнадцать», «девятнадцать»); final String [] tens = {"", "", "Двадцать", "Тридцать", "Сорок", "Пятьдесят", "Шестьдесят", "Семьдесят", "Восемьдесят", "Девяносто"}; если (i & lt; 20) возвратные единицы [i]; если (i & lt; 100) возвращают десятки [i / 10] + ((i% 10 & gt; 0)? "" + numToWord (i% 10): ""); если (i & lt; 1000) единицы возврата [i / 100] + «Сто» + ((i% 100 & gt; 0)? »и« + numToWord (i% 100): «»); if (i & lt; 1000000) возвращает numToWord (i / 1000) + «Thousand» + ((i% 1000 & gt; 0)? »« + numToWord (i% 1000): «»); return numToWord (i / 1000000) + «Миллион» + ((i% 1000000 & gt; 0)? »« + numToWord (i% 1000000): «»); }
Кажется, что IDLE изменяет текущий рабочий каталог на местоположение исполняемого скрипта, а при запуске скрипта с использованием cmd этого не происходит, и он оставляет CWD как есть.
Чтобы изменить текущий рабочий каталог, содержащий ваш скрипт, который вы можете использовать:
import os
os.chdir(os.path.dirname(__file__))
print(os.getcwd())
Переменная __file__
доступна, только если вы выполняете скрипт из файла и содержит путь к файлу. Подробнее об этом здесь: Python __file__ атрибут абсолютный или относительный?
import pathlib
current_dir = pathlib.Path(__file__).parent
current_file = pathlib.Path(__file__)
Doc ref: ссылка