今天python遇到的一些问题小结
2016-05-20 22:32
387 查看
将程序改成python遇到种种问题,
主要还是列表的使用问题:
假设现在有这样一个结构体route,里面有一个start[],有一个end[],有一个size[]
重点在于route并不是顺序生成的,比如先生成route[2],再生成route[0]
假设用c++数组是这样
而之前route[1]还没有生成,这个是合理的,我可能先知道2号车的路线,再知道1号车的路线
而用python
python列表确实比较方便,但是感觉处理复杂一点的数据结构,比如3,4重结构体嵌套的感觉怪怪的, 那个括号打的要报警....估计还有其他简便方法吧,看官请赐教
另外假设c++经常有一种写法
但是不能用python这样写
只能改成这样
主要还是列表的使用问题:
假设现在有这样一个结构体route,里面有一个start[],有一个end[],有一个size[]
重点在于route并不是顺序生成的,比如先生成route[2],再生成route[0]
假设用c++数组是这样
route[2].start[0]=1; route[2].end[0]=2; route[2].size[0]=3;
而之前route[1]还没有生成,这个是合理的,我可能先知道2号车的路线,再知道1号车的路线
而用python
route=[] for i in range(3): route.append([]) route[2].append([1,2,3])我目前只能想到这种写法,说白了就是先将列表(数组)生成好,每一个作为列表再填充内容
python列表确实比较方便,但是感觉处理复杂一点的数据结构,比如3,4重结构体嵌套的感觉怪怪的, 那个括号打的要报警....估计还有其他简便方法吧,看官请赐教
另外假设c++经常有一种写法
for (i=1;i<=n;i++) { *** *** if (不符合某个条件) i--; }
但是不能用python这样写
for i in range(n): *** *** if (不符合某个条件) i=i-1这样还是循环n次,比如4还是[0,1,2,3]只不过中间不符合的话把i--但是下一次还是从列表中应该出发的数开始
只能改成这样
i=0 while(i<n): ** ** if (符合某个条件) i++
相关文章推荐
- python 接口自动化测试--框架整改(五)
- Python 验证码生产程序和进度条程序
- 将普通图片转化为字符画(Python)
- 爬虫xpath学习
- python
- LeetCode Word Ladder II
- Ubuntu14.04LTS下学习python2.7.6里程
- Python基础笔记
- 熟悉python中的tkinter图形包--(写一个参数计算器)
- 感知机学习算法初步1
- Python资料锦集
- Python中pydoc命令在windows下不能使用的解决办法
- Python os.popen()方法的用法
- python
- Python 进阶 —— 迭代器与生成器
- VMware workstations 12里配置Ubuntu 12.04及python环境
- Python 扫面文件夹中的文件
- 【Python自动化运维之路Day2】
- leetcode(11), Number of 1 Bits(python)
- TexturePacker批处理python