В настоящий момент нет официального способа сделать это, но вы можете использовать небольшой трюк, чтобы достичь этого! Помните, что это экспериментально, и у него есть некоторые ограничения ... (проверьте эту ссылку , если вы беспокоитесь о совместимости с навигатором)
Что вы можете сделать, это использовать селектор CSS3: псевдо classe nth-child()
#list>* {
display: inline-block;
padding: 20px 28px;
margin-right: 5px;
border: 1px solid #bbb;
background: #ddd;
color: #444;
margin: 0.4em 0;
}
#list :nth-child(-n+4) {
color: #600b90;
border: 1px dashed red;
background: orange;
}
The oranges elements are the previous sibling li selected using li:nth-child(-n+4)
1
2
3
4
5
6
7
8
9
Это превратит содержимое в одну строку в Python 2.6 1 и выше:
with open('x.txt') as x: f = x.read()
И это создаст список строк:
with open('x.txt') as x: f = x.readlines()
Эти подходы гарантируют немедленное закрытие входного файла сразу после чтения.
Сноска:
из __future__ import with_statement
. Более старый подход, не гарантирует немедленное закрытие - это использовать это для создания единственной строки:
f = open('x.txt').read()
И это для создания списка строк:
f = open('x.txt').readlines()
На практике он будет немедленно закрыт в некоторых версиях CPython, но закрывается только когда сборщик мусора доберется до него "в Jython, IronPython и, возможно, в какой-нибудь будущей версии CPython.
Запуск в Python 3.5 , можно использовать pathlib
модуль для более современного интерфейса. Будучи Python 3, это делает различие между чтением текста и чтением байтов:
from pathlib import Path
text_string = Path('x.txt').read_text() # type: str
byte_string = Path('x.txt').read_bytes() # type: bytes