Извините за вопрос новичка, но я прочитал руководство, этот вопрос и несколько раз пробовал, но без ожидаемых результатов.
Итак, я использовал vim для редактирования файла (прикреплен). Но при запуске я получил ошибку TabError: непоследовательное использование табуляции и пробелов в ошибке отступа.
Вот что я пробовал:
Откройте файл с помощью Vim. введите :retab и . Запустите файл еще раз. По-прежнему появляется сообщение TabError.
Откройте файл еще раз и введите :retab! и . Запустите файл еще раз. По-прежнему появляется сообщение TabError.
Откройте файл еще раз и введите :retab! 4 и . Запустите файл еще раз. На этот раз это работает, но я понятия не имею, почему? Плюс в файлах отступы кажутся чрезмерно длинными. (Я читал здесь, что редактор может отображать 8 пробелов для табуляции)
Мои вопросы:< /p>
Что означает :retab, :retab! и :retab! 4 что это значит?
#!/usr/bin/env python
#Reduce function for computing matrix multiply A*B
#Input arguments:
#variable n should be set to the inner dimension of the matrix product (i.e., the number of columns of A/rows of B)
import sys
import string
import numpy
#number of columns of A/rows of B
n = int(sys.argv[1])
#Create data structures to hold the current row/column values (if needed; your code goes here)
currentkey = None
alist = [] # list for elelents in A
blist = [] # list for elements in B
# input comes from STDIN (stream data that goes to the program)
for line in sys.stdin:
#Remove leading and trailing whitespace
line = line.strip()
#Get key/value
key, value = line.split('\t',1)
print(key, value)
#Parse key/value input (your code goes here)
key = (key.split(',', 1)[0], key.split(',',1)[1])
value = (value.split(',', 1)[0], value.split(',',1)[1], value.split(',',1)[2])
#If we are still on the same key...
if key==currentkey:
#Process key/value pair (your code goes here)
# store all values in a lisl
if value[0]=='A':
alist.append([value[1], value[2]])
else:
blist.append([value[1], value[2]])
#Otherwise, if this is a new key...
else:
#If this is a new key and not the first key we've seen, i.e. currentkey!=None
if currentkey:
#compute/output result to STDOUT (your code goes here)
alist = sorted(alist)
blist = sorted(blist)
newlist = [a[1]*b[1] for a,b in zip(alist, blist)]
res = newlist.sum()
print(currentkey, res)
currentkey = key
#Process input for new key (your code goes here)
Извините за вопрос новичка, но я прочитал руководство, этот вопрос и несколько раз пробовал, но без ожидаемых результатов.
Итак, я использовал vim для редактирования файла (прикреплен). Но при запуске я получил ошибку TabError: непоследовательное использование табуляции и пробелов в ошибке отступа.
Вот что я пробовал: [list] [*]Откройте файл с помощью Vim. введите :retab и :x. Запустите файл еще раз. По-прежнему появляется сообщение TabError. [*]Откройте файл еще раз и введите :retab! и :x. Запустите файл еще раз. По-прежнему появляется сообщение TabError. [*]Откройте файл еще раз и введите :retab! 4 и :x. Запустите файл еще раз. На этот раз это работает, но я понятия не имею, почему? Плюс в файлах отступы кажутся чрезмерно длинными. (Я читал здесь, что редактор может отображать 8 пробелов для табуляции) [/list]
[b]Мои вопросы:[/b]< /p>
[list] [*]Что означает :retab, :retab! и :retab! 4 что это значит? [*]Почему :retab не работает с моим файлом?
[code]#!/usr/bin/env python #Reduce function for computing matrix multiply A*B #Input arguments: #variable n should be set to the inner dimension of the matrix product (i.e., the number of columns of A/rows of B) import sys import string import numpy
#number of columns of A/rows of B n = int(sys.argv[1])
#Create data structures to hold the current row/column values (if needed; your code goes here)
currentkey = None alist = [] # list for elelents in A blist = [] # list for elements in B # input comes from STDIN (stream data that goes to the program) for line in sys.stdin: #Remove leading and trailing whitespace line = line.strip() #Get key/value key, value = line.split('\t',1) print(key, value) #Parse key/value input (your code goes here) key = (key.split(',', 1)[0], key.split(',',1)[1]) value = (value.split(',', 1)[0], value.split(',',1)[1], value.split(',',1)[2]) #If we are still on the same key... if key==currentkey: #Process key/value pair (your code goes here) # store all values in a lisl if value[0]=='A': alist.append([value[1], value[2]]) else: blist.append([value[1], value[2]]) #Otherwise, if this is a new key... else: #If this is a new key and not the first key we've seen, i.e. currentkey!=None if currentkey: #compute/output result to STDOUT (your code goes here) alist = sorted(alist) blist = sorted(blist) newlist = [a[1]*b[1] for a,b in zip(alist, blist)] res = newlist.sum() print(currentkey, res) currentkey = key #Process input for new key (your code goes here) [/code] [/list]
Я решил, что немного подучу Python. В первом введении говорится, что для группировки операторов используются отступы. Хотя очевидно, что лучшая привычка — использовать только один из них, что произойдет, если я поменяю их местами? Сколько пробелов...
Я работаю с планшетом Chainway p80. Это Android-планшет с RFID. Я могу заставить RFID работать. Однако иногда RFID дает сбой и выдает результат init() err UHFOpenAndConnect: -1. Проблема заключается в запуске RFID-модуля внутри планшета. Это...
Я работаю с планшетом Chainway p80. Это Android-планшет с RFID. Я могу заставить RFID работать. Однако иногда RFID дает сбой и выдает результат init() err UHFOpenAndConnect: -1. Проблема в запуске RFID-модуля внутри планшета. Это случается время от...
Я работаю над настройкой пользовательской градл с использованием DSL Kotlin, и, исследуя проект nowinandroid-специфично для соглашения/build.gradle.kts и libs.versions.toml-файлов-я заметил бессмысленность в том, как доступ к идентификаторам плагина...