имеет методы rjust
и ljust
для этой вещи.
>>> n = 10
>>> for i in xrange(1,n+1):
... print (i*'*').rjust(n)
...
*
**
***
****
*****
******
*******
********
*********
**********
или, альтернативно:
>>> for i in reversed(xrange(n)):
... print (i*' ').ljust(n, '*')
...
*
**
***
****
*****
******
*******
********
*********
**********
В моем втором примере используется символ пробела в качестве печатаемого символа и * как символ заполнения.
Аргумент ljust
или rjust
- это ширина терминала. Я часто использую их для разделения разделов с заголовками, когда у вас есть отладочная отладочная распечатка, например. print '--Spam!'.ljust(80, '-')
.
С man-страницы:
Функция creat () должна вести себя так, как если бы она была реализована следующим образом:
blockquote>int creat(const char *path, mode_t mode) { return open(path, O_WRONLY|O_CREAT|O_TRUNC, mode); }
Итак, файл открыт в режиме только для записи, и поэтому вы не можете читать.
Если вам нужно читать и писать, используйте
open(...)
непосредственно сO_RDWR
вместоO_WRONLY
.Указанное вами
0666
просто указывает права доступа к файловой системе, с которой создается файл.Если вы хотите просто выполнить обычный файловый ввод / вывод, вы также можете использовать высокоуровневые API, такие как
fopen
.