':return: çšæ·å³æ³šçäžæ ïŒè¿åçæåš
:rtype: Column.Iterable'

@property
def followed_columns(self):

    from .column import Column
    if (self.url is None):
        return
    if (self.followed_column_num > 0):
        tag = self.soup.find('div', class_='zm-profile-side-columns')
        if (tag is not None):
            for a in tag.find_all('a'):
                (yield Column(a['href'], a.img['alt'], session=self._session))
        if (self.followed_column_num > 7):
            offset = 7
            gotten_data_num = 20
            while (gotten_data_num == 20):
                params = {'hash_id': self.hash_id, 'limit': 20, 'offset': offset}
                data = {'method': 'next', '_xsrf': self.xsrf, 'params': json.dumps(params)}
                j = self._session.post(Author_Get_More_Follow_Column_URL, data=data).json()
                gotten_data_num = len(j['msg'])
                offset += gotten_data_num
                for msg in map(BeautifulSoup, j['msg']):
                    name = msg.strong.text
                    url = msg.a['href']
                    post_num = int(re_get_number.match(msg.span.text).group(1))
                    (yield Column(url, name, post_num=post_num, session=self._session))
