Я думаю, что ваша проблема с этой строкой:
if user1UsernameInput == users[0]:
, как вы ранее создали users
, который является списком кортежей, следовательно, user [0] означает кортеж (первый кортеж из списка), возможно, вы там отсутствует второй индекс, и он должен быть
if user1UsernameInput == users[0][0]:
РЕДАКТИРОВАТЬ: Исправлено, как предложено в @Idlehands
, спасибо.
То, что я сделал, было ввести
man factor
и перешел к нижней части и нашел 'GNU coreutils 6.10'. Таким образом, я погуглил 'coreutils' и... нашел сайт joschi просто связанным с.
Можно также узнать, которые упаковывают двоичный файл, прибывает из загрузки тот исходный код пакетов.
На Debian (и Ubuntu и что-либо еще это основано на Debian) Вы делаете это как это:
$ dpkg -S /usr/bin/factor coreutils: /usr/bin/factor $ apt-get source coreutils
Первая команда проверит, какой пакет содержит файл, который Вы ищете (использование"which factor
"для обнаружения, какой двоичный файл выполняется, когда Вы просто вводите"factor
").
Вторая команда загрузит и распакует источники (включая патчи, примененные для создания пакета) к текущему каталогу, таким образом, это должно будет быть выполнено в специализированном или временном каталоге.
Я вполне уверен rpm
- основанные дистрибутивы имеют подобный механизм, но я не знаю их команды.
Обычно Вы будете находить исходный код на веб-сайте программы, если это будет открытый исходный код. В этом случае здесь, так как фактором является часть coreutils.
Для нахождения пакета, двоичный файл прибывает из в основанной на об/мин системе, Вы могли бы ввести:
$ rpm -qf /usr/bin/factor
который распечатает имя пакета. Вместо этого с:
$ rpm -qif /usr/bin/factor
Вы получите также информацию о пакете, включая он - домашняя страница во многих случаях.
Источник rpms также существует, но как получить их, зависит от высокоуровневого диспетчера пакетов, используемого сверху об/мин (конфетка, urpmi, склонный-get4 для об/мин...).
В большинстве систем, также,/usr/share/doc/содержит некоторую документацию относительно программы, и ссылка сайта довольно часто находится где-нибудь там, возможно, в README.
На хинду просто посмотрите в ebuild, с которым Вы скомпилировали пакет :D.
Если Вы не уверены?
# which factor /usr/bin/factor # grep '/usr/bin/factor' /var/db/pkg/*/*/CONTENTS /var/db/pkg/sys-apps/coreutils-6.12-r2/CONTENTS:obj /usr/bin/factor 5aaf903daa4345efb11618b3cb47e9a5 1224224574 /var/db/pkg/sys-apps/coreutils-6.12-r2/CONTENTS:obj /usr/lib64/debug/usr/bin/factor.debug 517d965636850633e9b15926dde8c222 1224224575 # cat /var/db/pkg/sys-apps/coreutils-6.12-r2/SRC_URI ftp://alpha.gnu.org/gnu/coreutils/coreutils-6.12.tar.lzma mirror://gnu/coreutils/coreutils-6.12.tar.lzma mirror://gentoo/coreutils-6.12.tar.lzma mirror://gentoo/coreutils-6.12-patches-1.0.tar.lzma http://dev.gentoo.org/~vapier/dist/coreutils-6.12-patches-1.0.tar.lzma # cat /var/db/pkg/sys-apps/coreutils-6.12-r2/HOMEPAGE http://www.gnu.org/software/coreutils/
Но конечно, исходный код, вероятно, все еще доступен в /usr/portage/distfiles
.
Другой, очень хороший подход должен использовать Google Code Search. Например, поиск фактора coreutils (см. страницу справочника или factor --help
чтобы видеть, что это от coreutils) придумал пакет как второй результат. Два щелчка далеко я просматривал factor.c онлайн.
Поиск кода Google ищет большую часть общедоступного исходного кода. Можно использовать regexps и много опций расширенного поиска, включая ограничение языком и лицензией.
Я обычно нахожу ссылку на источник, домашнюю страницу и другую полезную информацию путем выполнения поиска на freshmeat.