Python静态存储文章页求教问题,python静态,Python新手, 求教


Python新手, 求教问题,还望详解。

我想要实现的功能:
静态存储一页文章,每行不超过80个字符,共N行。存储结构使用线性表。
输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字标点符号

用户视角:

1.新建文本2.浏览输入文本3.……4.退出Please enter the number : 1Input the text:

用Python 如何实现,不是很清楚?求教!
以下是用C++ 实现的过程。

typedef struct line{    char *data;    struct line *next;}LINE;void Create(LINE * &head){    printf ("请输入一页文章,以Ctrl+E为结尾(每行最多输入80字符!):\n");LINE *p=new LINE;               /*首先为链表 建立一个附加表头结点*/                                          head=p;                         /*将p付给 表头指针*/    char ch[100];    while(1)    {       gets(ch);                   /*输入字符串!*/       if(strlen(ch)>80)       {           printf("每行最多输入80字符");           break;       }       if(ch[0]==5)break;            /*如果发现输入 ^E,则退出输入*/             p=p->next=new LINE;       p->data=new char[strlen(ch)+1];          /*为结点分配空间 */           strcpy(p->data,ch);       if(ch[strlen(ch)-1]==5)        /* 除去最后一个控制符 ^E */       {                    p->data[strlen(ch)-1]='\0';           break;       }    }    p->next=NULL;                       /*最后的一个指针为空 */    head=head->next;}

算法描述:
存储结构:采用单链表结构存储文章,每个结点存储一行,每行最长不超过80个字符。
用gets函数接收输入,每遇到一个回车换行就新建一个结点,将当前行存入其data域。当发现输入为^E时,在Data的最后加上字符串结束标志,并置当前结点的Next指针域为NULL。

希望你不是利用这个平台炒作业

#!/user/bin/env python# -*- encoding: UTF-8 -*-import sysdef create():    head = [None, None]    cur_node = head    CTRL_E = chr(5)    while 1:        input_line = raw_input('请输入一页文章,以Ctrl+E为结尾(每行最多输入80字符!):')        if len(input_line) > 80:            print >> sys.stderr, "每行最多输入80字符"            break        if len(input_line) > 0:            if input_line[0] == CTRL_E:                break            if input_line[-1] == CTRL_E:                input_line = input_line[:-1]            cur_node[1] = [None, None]            cur_node = cur_node[1]            cur_node[0] = input_line    cur_node[1] = None    head = head[1]    return headdef output(head):    cur_node = head    while cur_node:        print cur_node[0]        cur_node = cur_node[1]def main():    head = create()    output(head)if __name__ == '__main__':    main()

编橙之家文章,

评论关闭