一些朋友自学python过程中,发现书也能看懂,书上的玩具代码也能看懂,但为啥自己不能做习题,不能写代码解决问题,自己不能动手写代码?

  原因是初学者没有学会计算思维、解决问题的方法、编程思路。

  编程思路的养成需要一个过程的,在编码过程中思考,多动手敲代码。

  有时候,想不明白的地方,有人稍微点破一下,那层纸就很容易破。

  请看下面的例子。

编程思路一:

经常有人问,一个文本文件,要抽取多少行以后的文本。
相信记数循环,大家都看得懂,也会写。下面的代码就是利用记数循环来解决这个问题。

代码一:
一个几百M的文本文件,需要每隔1000行写到新的文件中。
不要小看了计数循环,用计数循环和判断语句就可以解决这个问题。

# coding:utf-8
"""零基础入门学习Python3  http://www.gooln.com/dir/135723.html
"""
with open('dist_1.txt','r') as f1 ,open('dist_new.txt','w') as f2:
    i = 0
    for line in f1:
        i += 1
        if i % 1000 == 0:
            f2.write(line)

代码二:
请问一个日志文本文件有2000行,我要提取其中的100行到200行,怎么做?
你可以试试下面的方法。
别小看while计数循环,其实它可以用来干很多事。
#coding:utf-8
i = 0
file1 = open("test.txt","r")
file2 = open("out.txt","w")
while True:
    line = file1.readline()
    i += 1
    if 100<=i and i<=200:
        file2.write(line)
    if i >200 :
        break
    if not line:
        break
file1.close()
file2.close()

程思路二:

#coding:utf-8
"""

抓了a,b,c,d4名犯罪嫌疑人.其中有一名是小偷,审讯中:
        a说我不是小偷
        b说c是小偷
        c说小偷肯定是d
       d说c胡说!
其中有3个人说的是实话,一个人说的是假话,编程推断谁是小偷。
(用穷举法和逻辑表达式)

"""

for thief in ['a','b','c','d']:

      sum = (thief != 'a') + (thief == 'c') + (thief == 'd') + (thief !='d')
      if sum == 3:
          print "小偷是:%s " % thief

总结:学习python编程,先学会过程式编程,再过度到面向对象的编程范式。学会函数抽象、类抽象。一步一步养成计算思维、学会解决问题的方法、编程思路。这个需要一个过程,也不要操之过急。看一下这些视频,可能对你有些帮助。

如何才能快速入门python3?的更多相关文章

  1. UI设计小白怎样学才能快速入门?

    最近有很多同学问我,UI小白有什么捷径可以快速入门?其实我想说设计这门学科没有什么捷径,真的只有多学.多看.多练.多想.多做. 1.先学软件 如果你是小白,软件也不会用,那就先学软件,从PS开始,先看 ...

  2. python3.5+django2.0快速入门(二)

    昨天写了python3.5+django2.0快速入门(一)今天将讲解配置数据库,创建模型,还有admin的后台管理. 配置数据库 我们打开mysite/mysite/settings.py这个文件. ...

  3. python3.5+django2.0快速入门(一)

    因为这篇教程需要用到anaconda的一些操作,如果还不懂anaconda的操作的同学可以看下这篇文章python 入门学习之anaconda篇. 创建python3+的开发环境 直接在终端输入:co ...

  4. 1、Python快速入门(0529)

    学习来自马哥教育的视频,感谢马哥 编程语言: 用户: 问题空间 计算机:解决问题 解空间 抽象: 机器代码-->微码编程-->高级语言 (语言的高下级的是根据语言是否被人类容易理解或者更接 ...

  5. 快速入门 Python 数据分析实用指南

    Python 现如今已成为数据分析和数据科学使用上的标准语言和标准平台之一.那么作为一个新手小白,该如何快速入门 Python 数据分析呢? 下面根据数据分析的一般工作流程,梳理了相关知识技能以及学习 ...

  6. SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=》提升)

     SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=>提升,5个Demo贯彻全篇,感兴趣的玩才是真的学) 官方demo:http://www.asp.net/si ...

  7. 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  8. 【第四篇】ASP.NET MVC快速入门之完整示例(MVC5+EF6)

    目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...

  9. html5快速入门(四)—— JavaScript

    前言: 1.HTML5的发展非常迅速,可以说已经是前端开发人员的标配,在电商类型的APP中更是运用广泛,这个系列的文章是本人自己整理,尽量将开发中不常用到的剔除,将经常使用的拿出来,使需要的朋友能够真 ...

随机推荐

  1. redis读取自增时候指定的key问题

    首先,此文章是接了如下文章写的 Spring boot redis自增编号控制 踩坑 上面这个问题解决后,公司这边功能其实已经实现了,但是考虑到一种情况,因为我们这边号的生成就是根据上面的自增编号来的 ...

  2. x-boot

    https://github.com/Exrick/x-boot-front https://gitee.com/Exrick/x-boot

  3. JavaWeb学习笔记(七)—— JSP

    一.什么是JSP JSP全名是Java Server Pages,它是建立在Servlet规范之上的动态网页开发技术.在JSP文件中,HTML代码与Java代码共同存在,其中,HTML代码用来实现网页 ...

  4. abp框架angular 项目docker 手动部署到Linux环境中

    1.https://aspnetboilerplate.com/Templates 2.后端项目发布,在publish中abp默认已经存在DockerFile文件 3.修改后端文件中的DockerFi ...

  5. CF248E Piglet's Birthday(概率dp)

    题面 luogu CodeForces 题解 \(orz\) yyb 转移蜜罐其实是吓唬人的...... 转移的蜜罐都是尝试过的,所有只关心当前架子上的蜜罐数 设\(f[i][j]\)表示第i个货架有 ...

  6. git 下载 安装

    1.下载Git,官网地址:https://git-scm.com/,进入官网首页 在右下方的显示器中找到最新的版本下载,点击下载,跳转到下载页面 下载完成 2.安装Git 双击刚刚下载完成的安装文件, ...

  7. Apache Shiro(六)-基于URL配置权限

    数据库 先准备数据库啦. DROP DATABASE IF EXISTS shiro; CREATE DATABASE shiro DEFAULT CHARACTER SET utf8; USE sh ...

  8. [转] Chrome - 浏览器跨域访问设置(附:新老版本两种设置方法)

    [From] http://www.hangge.com/blog/cache/detail_1703.html 在进行前后分离的 webapp 开发,或者 H5 移动 App 开发时,我们会使用 P ...

  9. PIE SDK存储格式转换

      1.算法功能简介 影像存储格式转换可以实现栅格数据存储格式的自由转换,其中存储格式可以是 BSQ. BIP. BIL 三种格式. 遥感数字图像数据的存储与分发,通常采用以下三种数据格式: BSQ( ...

  10. Element UI 中国省市区级联数据

    https://www.npmjs.com/package/element-china-area-data