Чтобы отредактировать код и исправить ошибку:
while True:
try:
age = int(input("Please enter your age: "))
if age >= 18:
print("You are able to vote in the United States!")
break
else:
print("You are not able to vote in the United States.")
break
except ValueError:
print("Please enter a valid response")
Я загружаю аудиофайлы в свой Azure BLOB-объект, и я хотел бы знать, можно ли загрузить только те части аудио, которые я хочу?
blockquote>Да, это так. конечно можно скачать порцию блоба. BLOB-объекты Azure поддерживают чтение диапазона байтов. Например, допустим, вы хотите загрузить из файла только первые 1 КБ данных. Вот как вы можете загрузить эти данные:
import azure from 'azure-storage'; const ms = require('memory-streams'); const chunkStart = 0; const chunkEnd = 1023; const connectionString = 'your-azure-storage-connection-string'; const blobService = azure.createBlobService(connectionString); const writableStream = new ms.WritableStream({ highWaterMark: (chunk.end - chunk.start) * 2, writableHighWaterMark: (chunk.end - chunk.start) * 2, }); const requestOptions = { rangeStart: chunkStart, rangeEnd: chunkEnd }; blobService.getBlobToStream('container-name', 'blob-name', writableStream, requestOptions, (error, result, response) => { if (error) { console.log('Error occurred while downloading chunk!'); } else { const dataBuffer = writableStream.toBuffer(); console.log('Blob chunk downloaded!'); } });
Учитывая, что вы упомянули, что храните аудиофайл, обратите внимание, что вы не можете указать хранилищу Azure загружать аудиофайл «х» (например, загрузите первые 30 секунд аудио), поскольку хранилище Azure рассматривает все большие двоичные объекты как набор байтов и не знает, является ли файл аудиофайлом или чем-то еще.