设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 20761|回复: 14
打印 上一主题 下一主题

Crossin的编程教室 自学进度和问题

[复制链接]

16

主题

1

好友

244

积分

中级会员

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2015-10-25 18:56:47 |只看该作者 |正序浏览
本帖最后由 anyone 于 2015-10-26 03:02 编辑

非常感谢crossin的教程, 我打算据此学习python.

Crossin的编程教室
hxxp://115.29.188.128/static/wechat/python.html

学的过程有些问题, 整理在这里. 希望得到crossin先生或者各位朋友的解答.
我会不断将问题和解答总结在一起. 进来的朋友直接选择只看楼主就好了.

最终的目标:

用python写一个网页数据收集(web scraper, with xpath), 并输出rss feed的小工具.
进展: http://crossin.me/forum.php?mod=viewthread&tid=5453

我的段位:

只能照猫画虎的搞一些简单的小程序, 对于任何一种语言都不熟悉. 语法什么的是白目.

回复

使用道具 举报

1

主题

1

好友

152

积分

注册会员

Rank: 2

15#
发表于 2016-3-26 09:26:30 |只看该作者
赞一个!!很好的学习输出方法!!
回复

使用道具 举报

16

主题

1

好友

244

积分

中级会员

Rank: 3Rank: 3

14#
发表于 2015-10-26 02:01:45 |只看该作者
【Python 第12课】 for循环
  1. print("1+2+3....+100=")
  2. a=0
  3. for i in range(1,101):
  4.     a=a+i
  5. print(a)
复制代码
回复

使用道具 举报

16

主题

1

好友

244

积分

中级会员

Rank: 3Rank: 3

13#
发表于 2015-10-26 01:42:27 |只看该作者
【Python 第11课】 逻辑判断
  1. a = True #True是逻辑值, 那么true呢?
  2. b = not a
  3. print("想想下面这些逻辑运算的结果,然后用print看看你想的对不对:")
  4. print("我的答案")
  5. print("b : False")
  6. print("not b : True")
  7. print("a == b : False")
  8. print("a != b : True")
  9. print("a and b : False")
  10. print("a or b : Ture")
  11. print("1<2 and b==True : False")

  12. print("这里是结果:")
  13. print(b)
  14. print(not b)
  15. print(a == b)
  16. print(a != b)
  17. print(a and b)
  18. print(a or b)
  19. print(1<2 and b==True)
复制代码
回复

使用道具 举报

16

主题

1

好友

244

积分

中级会员

Rank: 3Rank: 3

12#
发表于 2015-10-25 22:20:00 |只看该作者
【Python 第10课】 变量2

一般判断需要一个变量, 数值需要一个变量.
  1. a=1
  2. b=0
  3. while a<100:
  4.     b=b+a
  5.     a=a+1
  6. print b
复制代码
回复

使用道具 举报

16

主题

1

好友

244

积分

中级会员

Rank: 3Rank: 3

11#
发表于 2015-10-25 22:06:51 |只看该作者
本帖最后由 anyone 于 2015-10-26 02:57 编辑

【Python 第9课】 random

提醒自己:
1, 注意拼写
2, 注意大小运算时候的各种情况的分析和判断. 做一些这方面的思维锻炼
3, 字符和数字类型运算时候的情况.
  1. from random import randint #第一次写成randit了, 修改拼写错误的时候注意全部文本搜索一下, 修改了这里却忘记了下面.
  2. age = randint(1,100)
  3. print("猜我的年龄?")
  4. print("放弃输入数字0") #如何判断按键? 比如不输入答案, 直接回车. #开始我直接写"quit", 但是文字答案在这里会有很多意想不到的结果, 所以简化只能是0. 恐怕需要一些数值类型判断的技巧.
  5. answer=""

  6. while answer!=0 and answer!=age:
  7.     #answer=raw_input() #字符和数字如果做比较运算是可以的. 为了避免这个情况, 需要判断一下数据类型.
  8.     answer=input()
  9.     if answer>age and answer!=0:
  10.         print("no, get smaller next time...")
  11.     if answer<age and answer!=0:
  12.         print("no, get bigger next time")
  13. if answer==age:
  14.     print("Nice try! Bingo!")
  15. if answer==0:
  16.     print("Thanks play this game, see ya next time.")
  17.    
  18. #要比较好的了解数字大小判断的各种情况, 多联系一下这方面的思维. 争取做到一次到位.
复制代码
回复

使用道具 举报

16

主题

1

好友

244

积分

中级会员

Rank: 3Rank: 3

10#
发表于 2015-10-25 21:27:00 |只看该作者
【Python 第8课】while

注意作为while的判断赋值在循环中的流动. 第一次做这个搞出了一个循环输出. 下面是最终的结果.
  1. print("我是什么人?")
  2. print("选择: 好人, 牛人, 贱人, 禽兽")
  3. print("退出请输入: exit")
  4. answer=raw_input()

  5. while answer!="exit":
  6.         if answer=="好人" or answer=="牛人":
  7.                 print("呵呵, 你也是~")
  8.                
  9.         if answer=="贱人" or answer=="禽兽":
  10.                 print("你才是~")
  11.                
  12.         if answer!="好人" and answer!="牛人" and answer!="贱人" and answer!="禽兽" and answer!="exit":
  13.                 print("不按套路出牌?")
  14.         answer=raw_input()
  15. print("bye")
复制代码
看crossin的例子, 我得到了一个启发, 可以先随便赋值一个, 进入循环后再说. 所以修正如下:
  1. print("我是什么人?")
  2. print("选择: 好人, 牛人, 贱人, 禽兽")
  3. print("退出请输入: exit")
  4. answer="进入循环" #区别在这里

  5. while answer!="exit":
  6.         answer=raw_input() #还有这里提前, 符合逻辑
  7.         if answer=="好人" or answer=="牛人":
  8.                 print("呵呵, 你也是~")
  9.                
  10.         if answer=="贱人" or answer=="禽兽":
  11.                 print("你才是~")
  12.                
  13.         if answer!="好人" and answer!="牛人" and answer!="贱人" and answer!="禽兽" and answer!="exit":
  14.                 print("不按套路出牌?")
  15. print("bye")
复制代码
回复

使用道具 举报

16

主题

1

好友

244

积分

中级会员

Rank: 3Rank: 3

9#
发表于 2015-10-25 20:56:48 |只看该作者
本帖最后由 anyone 于 2015-10-25 21:09 编辑

【Python 第7课】if

自己编辑了一下猜年龄的游戏, 我犯了两个错误:

1, 忘记了if 后面的冒号
2, 忘记了if下面语句的缩进
  1. age = 10
  2. print 'Guess what I think?'
  3. answer = input()

  4. if answer<age:
  5.         print 'too small?'


  6. if answer>age:
  7.         print 'too big?'


  8. if answer==age:
  9.         print 'Bingo!'
复制代码
作业
  1. print("我是什么人?")
  2. print("选择: 好人, 牛人, 贱人, 禽兽")
  3. #answer = input() #用这个必须打引号
  4. answer = raw_input()

  5. if answer == "好人" or answer == "牛人":
  6.         print("呵呵, 你也是~")
  7.        
  8. if answer == "贱人" or answer == "禽兽":
  9.         print("你才是~")
  10.        
  11. if answer != "好人" and answer != "牛人" and answer != "贱人" and answer != "禽兽":
  12.         print("不按套路出牌?")
复制代码
回复

使用道具 举报

174

主题

45

好友

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

8#
发表于 2015-10-25 19:52:57 |只看该作者
赞一个!
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

16

主题

1

好友

244

积分

中级会员

Rank: 3Rank: 3

7#
发表于 2015-10-25 19:46:12 |只看该作者
本帖最后由 anyone 于 2015-10-25 19:50 编辑

【Python 第6课】bool

附加学习了python的注释
  1. #comments here

  2. print("comments >") #comments here

  3. """
  4. multi
  5. lines
  6. comments
  7. """
复制代码
测试bool的代码
  1. a = 15
  2. b = 5
  3. #下面是运算
  4. print(a<b)
  5. print(a>b)
  6. print(a>=b)
  7. print(a<=b)
  8. #print(a=b) #这个报错, :)
  9. print(a==b)
  10. print(a!=b)
  11. print(not a==b)
  12. print(a!=b and a==b)
  13. print(a!=b or a==b)
复制代码
简单的说bool值就是上述几种类型的运算结果.

a=b 和 a==b是不同的. 前面是赋值, 后面是布尔.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-11-22 21:21 , Processed in 0.018310 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部