1

голосов
4

ответ
458

Просмотры

Получение всех перестановок ВСЕХ подсписков из списка целых чисел

У меня возникли проблемы с этой проблемой. В принципе, у меня есть список целых чисел, например, список = [1, 2, 3] Я хочу, чтобы получить все возможные перестановки каждого подмножества. Я знаю, что существуют аналогичные вопросы в Интернете, но я не мог найти то, что делает каждую перестановку, а также каждое подмножество. Другими словами, я хочу: функцию (список) = [], [1], [2], [3], [1, 2], [2, 1], [1, 3], [3,1] , [2, 3], [3,2], [1, 2, 3], [1, 3, 2], [2, 1, 3], [2, 3, 1], [3, 1, 2], [3, 2, 1] Я понимаю, что выход будет получать очень большой даже для небольшого размера списка ввода. К сожалению, я просто не могу понять, как сделать такую ​​проблему. Спасибо!
jj172
1

голосов
1

ответ
38

Просмотры

Python cmd.cmd выход на Ctrl + D

Как сделать CmdModule выход при выдаче Ctrl + D команды? По умолчанию, у нас есть выход оболочки, когда вы выдаете команду Ctrl + C, но не выходит при выдаче Ctrl + D.
jj172
1

голосов
2

ответ
546

Просмотры

How to insert value into Column Family using java/astyanax?

[SOLVED] - I am not sure why, but removing the m.withRow(CF_test, "acct1234") .incrementCounterColumn("loginCount", 1); part of my code made it work. Alternatively, if someone could explain why it does so, that would be appreciated. Thank you! I've been having trouble with Astyanax for Cassandra-cli. I couldn't really figure out much from the Netflix Github site, so I was looking to ask people with more firsthand experience. How would I go about inserting rows into a Column Family that I have already created in Cassandra? Currently, my code looks like this: // Inserting data MutationBatch m = keyspace.prepareMutationBatch(); //Initialize Column family ColumnFamily CF_test = new ColumnFamily( "users", // Column Family Name StringSerializer.get(), // Key Serializer StringSerializer.get()); // Column Serializer m.withRow(CF_test, "default") .putColumn("full_name", "john", null) .putColumn("email", "smith", null) .putColumn("state", "555 Elm St", null) .putColumn("gender", "Male", null) .putColumn("birth_year", 30, null); m.withRow(CF_test, "acct1234") .incrementCounterColumn("loginCount", 1); OperationResult result = m.execute(); However, it gives me the following error: Exception in thread "main" com.netflix.astyanax.connectionpool.exceptions.BadRequestException: BadRequestException: [host=127.0.0.1(127.0.0.1):9160, latency=55(55), attempts=1]InvalidRequestException(why:invalid operation for non commutative columnfamily users) at com.netflix.astyanax.thrift.ThriftConverter.ToConnectionPoolException(ThriftConverter.java:159) at com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:65) at com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:28) at com.netflix.astyanax.thrift.ThriftSyncConnectionFactoryImpl$ThriftConnection.execute(ThriftSyncConnectionFactoryImpl.java:151) at com.netflix.astyanax.connectionpool.impl.AbstractExecuteWithFailoverImpl.tryOperation(AbstractExecuteWithFailoverImpl.java:69) at com.netflix.astyanax.connectionpool.impl.AbstractHostPartitionConnectionPool.executeWithFailover(AbstractHostPartitionConnectionPool.java:256) at com.netflix.astyanax.thrift.ThriftKeyspaceImpl.executeOperation(ThriftKeyspaceImpl.java:485) at com.netflix.astyanax.thrift.ThriftKeyspaceImpl.access$000(ThriftKeyspaceImpl.java:79) at com.netflix.astyanax.thrift.ThriftKeyspaceImpl$1.execute(ThriftKeyspaceImpl.java:123) at Test1.main(Test1.java:76) Caused by: InvalidRequestException(why:invalid operation for non commutative columnfamily users) at org.apache.cassandra.thrift.Cassandra$batch_mutate_result.read(Cassandra.java:20833) at org.apache.thrift.TServiceClient.receiveBase(TServiceClient.java:78) at org.apache.cassandra.thrift.Cassandra$Client.recv_batch_mutate(Cassandra.java:964) at org.apache.cassandra.thrift.Cassandra$Client.batch_mutate(Cassandra.java:950) at com.netflix.astyanax.thrift.ThriftKeyspaceImpl$1$1.internalExecute(ThriftKeyspaceImpl.java:129) at com.netflix.astyanax.thrift.ThriftKeyspaceImpl$1$1.internalExecute(ThriftKeyspaceImpl.java:126) at com.netflix.astyanax.thrift.AbstractOperationImpl.execute(AbstractOperationImpl.java:60) ... 8 more Creating keyspaces worked, now I'm just unable to get column families changed.
jj172
1

голосов
1

ответ
71

Просмотры

Как проверить, если файл содержит строку, и ничего

Я ищу что-то вроде дифф в Баш скрипт, но вместо того, чтобы проверить, если два файла совпадают, то я могу проверить, если содержимое файла соответствует точно определенную строку. Я не хочу, чтобы это было правдой, если есть и другие вещи в файле, но, скорее, он должен быть точным соответствием. Какой самый лучший способ сделать это? Пример: Строка: «Hello World» Файл, содержащий «Hello World», и ничего больше будет удовлетворять, но один, который содержит «Hello World, Hello World» не будет, так как это больше, чем строка, я хочу, чтобы точно соответствовать.
jj172
2

голосов
2

ответ
4.8k

Просмотры

Использование питона и Postgres, переменные в пределах выполнения функции?

У меня возник вопрос по поводу использования переменных внутри функции питона, который обращается к серверу PostgreSQL. Например, следующее: Защиту удалить (): cur.execute ( «» «DELETE FROM Potluck WHERE имя = Var_1;» «» Тем не менее, если я хотел функцию обновления, чтобы взять в переменных для VAR_1, как бы я это сделать? Например, я хочу, чтобы моя функция, чтобы быть в форме: защиту удалить (var_1): cur.execute ( "" "DELETE FROM Potluck WHERE имя =% с;" "", (Var_1)) Тем не менее, просто набрав, что Ждут» . т работа Кроме того, как насчет в том случае, когда: защиту удалить (имя, Var_1): cur.execute ( "" "DELETE FROM WHERE Potluck% s =% s," "", (имя, var_1)), где я не хочу «имя» иметь кавычки, когда она вставляется в строку? Любая помощь будет оценен по достоинству!
jj172
2

голосов
1

ответ
89

Просмотры

Доступ $? Переменный с централизованным утверждением?

У меня есть некоторый код, который я хотел бы иметь $? переменная. VARIABLE = `Grep "searched_string" test.log | СЕПГ «s / поиск / найдено /» 'Есть ли способ проверить, если вся эта линия (а не только СЭД команды) была успешно завершена? Если я пытаюсь следующий код сразу после этого: если [ «$?» -ne 0], то эхо 1 выход фи он не работает, даже если Grep часть заявления не может. Может кто-то показать, как решить эту проблему?
jj172
5

голосов
1

ответ
3.1k

Просмотры

Прокрутка с помощью мыши в редакторе нано?

Вероятно, не место, чтобы задать этот вопрос, но я не мог найти ответ в любом месте. Как говорит название, есть способ, чтобы включить колесо мыши скроллинг в редакторе нано? (В частности Ubuntu 14.04)
jj172
2

голосов
4

ответ
1.2k

Просмотры

Разрешить argparse nargs = «+», чтобы принять разделенные запятые ввода с выбором [дублированный]

Этот вопрос уже есть ответ здесь: Запятая отделенных входов вместо пространства разделенных входы для Argsparse 2 ответов Я хочу использовать {} Choices параметр argparse, но позволяет пользователю вводить любое количество предметов из вариантов. Например, если выбор является [1,2,3], я хотел бы следующее быть действительным: --arg 1 --arg 1,2 --arg 1,3 и т.д. Тем не менее, похоже выбор не принимает разделенных запятыми ввода при использовании nargs = «+». Есть ли способ обойти это? Я все еще хочу, чтобы обеспечить соблюдение, что принятые в опции в наборе вариантов, которые я определил, ошибки проверки для странных входов.
jj172
2

голосов
1

ответ
51

Просмотры

Алгоритм присвоения чисел в строку?

Я хотел бы создать словарь, который хранит значение для строки, так что, когда сравниваются две строки, могут быть использованы два соответствующих значений для определения, какая строка приходит первым в словаре. Например, значение «а» должно быть меньше, чем значение для «AB». Значение «г» должно быть больше, чем значение для «аз». И так далее. Я попытался прибегая к помощи для этого, но я не смог найти :( Есть хороший способ осуществить это? Я вижу, что это очень похож на десятичную систему, но в базе 26. (Например, ааа бы как 111, и Ааз будет как 11 (26).) Но это не будет работать в том случае, «г»> «аз», так как это было бы, говоря (26)> 1 (26). Одно решение, которое я придумал было взять длину наибольшего слова (скажем, м), а затем присвоить значение, выполнив 26 ^ т + 26 ^ (т-1) и так далее для каждой буквы. Однако для этого необходимо знать длину наибольшего слова. Есть ли такие алгоритмы, которые не требуют этого?
jj172
2

голосов
3

ответ
240

Просмотры

Python-стандартный вывод Перенаправление Отмена

Так что я знаю из Перенаправление STDOUT в «ничего» в питона, что вы можете подавить операторы печати. Но можно ли отменить эту команду позже, так что через определенные точки, операторы печати действительно будут напечатаны снова? Например, скажем, я хочу напечатать «б», а не «а». Я хотел бы сделать: импорт Os F = открытым (os.devnull, «ш») sys.stdout = е печатью ( «а») # НЕКОТОРЫХ COMMAND печать ( «б») Может кто-нибудь просветить меня относительно того, что «НЕКОТОРУЮ КОМАНДУ» будет быть?
jj172