本文是看到的,然后结合自己之前学习的过程也碰到的问题,所以就引用过来了:http://www.cnblogs.com/walkingp/p/3261663.html

一、注意你的Python版本

Python官方网站为http://www.python.org/,当前最新版本为3.4.0 alpha,稳定版本为3.3.2,在3.0版本时,Python的语法改动较大,而网上的不少教程及语法针对的是1.0或者2.0版本的,这样就造成不少初学者按照示例代码来写,但编译都无法通过的问题。

1、print()函数

旧的print函数用法为print ‘Hello’,而新的print函数对此改成了print(‘Hello’)并且不再兼容之前版本。

如果在3.X版本上Python上使用旧的print语法,将出现“SyntaxError: invalid syntax”错误。

2、raw_input()与input()

Python3中用input()取代了raw_input(),当然这仅仅是重命名,使用上并没有不同;

3、比较符号,使用!=替换<>

4、repr函数

使用repr()函数替换``(注:反单引号,位于键盘1的左边一个键),将一个object转换为string,注意repr()与str()略有不同

5、exec()函数

exec用来执行存储在字符串或者文件中的Python语句,与JavaScript中的eval()函数类似,新的exec用法为exec(‘print(“Hello”)’)

二、新手常遇到的问题

1、如何写多行程序?

相信新手经常会遇到为何对着Python Shell发现程序没法换行,一换行就认为是执行了。这是因为你使用的是Python Shell!你可以点击File->New Window或者Ctrl+N新开一个Python编辑器,这才是代码编辑器,尽情写你的Python程序吧,执行时只需要保存为后缀是.py的文件,然后F5就可以在Python Shell显示执行结果了。

2、如何执行.py文件?

直接双击.py文件即可,如果出现不能执行的问题,可能是你没有正确环境变量,在环境变量里找到Path,加上你Python的安装路径,比如C:\Python33\;

3、and,or,not

一般的编程语言比较关系运算符都是&&、||以及!,但Python偏偏使用and、or和not来分别代码并且、或者和非,我惊呆了。

4、True和False

没错,的确是True,而不是true,Python的这一点也实在令人难以理解,Python语法体系中基本都是小写的语法风格,为什么到这里要使用Pascal命名方式?

三、Python的数据结构

1、列表 List

声明方式:list=[1,2.3,’x’,'Hello’],拥有方法:

  • list.append(x) 在列表尾部添加一项
  • list.extend(L) 用给定的列表将当前列表接长,append与extend区别见http://hi.baidu.com/wewe39/item/c2599557739ec9dcd48bacf6
  • list.insert(i,x) 在给定的位置上插入项
  • list.remove(x) 移除列表中的第一个值为x的项,注意x并非索引
  • list.pop([i]) 删除给定位置的项并返回
  • list.index(x) 返回列表中第一个值为x的项索引值,没有匹配项则产生一个错误
  • list.count(x) 返回列表中x出现的次数
  • list.sort() 排序
  • list.reserve() 倒序

遍历示例:

numbers=[0,1,2,3,4,5,6,7,8,9] 
for i in range(len(numbers)): 
    print(i)

2、元组 Tuple

声明方式比较特殊:tuple=item1,item2,item3,例:

tuple=12,323.0,0.34,'Hello' 
for i in range(len(tuple)):#遍历 
    print(tuple[i])

3、集合 Set

声明方式:set={item1,item2,item3},例:

basket={'a’,'b','a','c','c’,'d'}

集合为无序不重复的元素集,上例声明的结果将为

{'d', 'a', 'b', 'c'}

遍历方式:

basket={'a','b','a','c','c','d'} 
for i in basket: 
    print(i)

4、字典 Dict

声明示例:

tel={'jack':23423,'sape':234}

可使用下述方式进行赋值:

tel['guido']=4127

结果为:{'sape': 234, 'guido': 4127, 'jack': 23423}

可使用items()方法取得键和对应的值,例:

for k,v in tel.items(): 
    print(k,v)

遍历方式:

tel={'jack':23423,'sape':234} 
for key in tel: 
    print(key ,':' , tel[key])

数据结构中比较重要的一个就是正则表达式的应用

初学者可以看视频或者资料,进行网页的抓取,爬虫等基本的实验,到现在为止,我也是个初学者,这只是一个积累记录。正则表达式是一个很重要的部分,之前只是看了视频,了解了大致部分,但是还没有应用。

Python初学注意问题的更多相关文章

  1. 孤荷凌寒自学python第四十五天Python初学基础基本结束的下阶段预安装准备

     孤荷凌寒自学python第四十五天Python初学基础基本结束的下阶段预安装准备 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天本来应当继续学习Python的数据库操作,但根据过去我自 ...

  2. Python初学笔记之字符串

    一.字符串的定义 字符串是就一堆字符,可以使用""(双引号).''(单引号)来创建. 1 one_str = "定义字符串" 字符串内容中包含引号时,可以使用转 ...

  3. Python初学的易犯错误

    当初学 Python 时,想要弄懂 Python 的错误信息的含义可能有点复杂.这里列出了常见的的一些让你程序 crash 的运行时错误. 1)忘记在 if , elif , else , for , ...

  4. Python初学

    经同学推荐,学习了下Python语言,看Python的介绍,它本身是一个面向对象的解释型脚本语言,我初看到这句话的时候就在想,一个脚本语言还搞成面向对象?有这个必要么?原谅我肤浅了一把. 它还被俗称为 ...

  5. python 初学笔记 (一)

    初学python第一天,希望自己真正了解计算机语言,并且做出成效. 写下学习笔记,记录学习进度,娱乐学习,不断成长. python详细介绍: python是什么?运用到哪里?有哪些在使用它? pyth ...

  6. Python初学(1)

    最近在学习python,以后想编写一些工作中用的到的脚本.python的入门我选择了<python从初学到入门>,这篇文章我会跟进我的学习进度.算是一个笔记吧. 我本身是熟悉C语言的,看p ...

  7. python初学心得之一

    昨天开始接触并学习python,对python有了初步印象. 一.python主要应用方向 二.python语言类型 三.python2和3的主要区别 四.常见字符编码 五.Python语法初学  一 ...

  8. python初学杂记

    python常用命令: 1.python 或者 python3  打开交互式python解释器 2.python hello.py   通过命令提示符运行python脚本 交互式python解释器常用 ...

  9. Mac下python初学之Image库(PIL)

    Mac下python 使用Image库 安装PIL,下载http://www.pythonware.com/products/pil/ 解压PIL源码包,阅读README知道需要使用python se ...

  10. python初学day01

    1.执行Python脚本时打印的字符有颜色 1. print "\033[32;1mhello\033[0m" #打印绿色 2. print "\033[31;1mhel ...

随机推荐

  1. js中call、apply和bind的区别

    在JS中,这三者都是用来改变函数的this对象的指向的,他们有什么样的区别呢.在说区别之前还是先总结一下三者的相似之处:1.都是用来改变函数的this对象的指向的.2.第一个参数都是this要指向的对 ...

  2. SAP ABAP: Error Message "Statement already exist" when creating a function module.

    https://archive.sap.com/discussions/thread/1089149     First check above link where my problem is so ...

  3. cxf动态调用外部web service 报告异常java.lang.NoSuchFieldErr

    原因:cxf 依赖的xmlschema-core 与axis2-kernel依赖的xmlschema冲突. 解决方法:因为在项目中只用cxf即可,所以删除axis2的依赖.

  4. deconvolution layer parameter setting

    reference: 1. Paper describes initializing the deconv layer with bilinear filter coefficients and tr ...

  5. Java中如何正确的将byte[]数组转化为String类型?

    很多人在编程时,总是喜欢用一下方法将数组转为字符串:(a为byte数组) String s=a.toString(); 可是每次返回的时候,新手看来返回的结果是乱码,比如说我,写RSA算法时,没有注意 ...

  6. 2016 ACM-ICPC EC-Final

    题目链接:Uva传送门 CFGym传送门 UVALive7897 Number Theory Problem (找规律签到) 思路: 8的幂次都是可以的,因为an-1一定能分解成a-1乘上一个多项式. ...

  7. 启动服务报错:nested exception is java.lang.NoSuchMethodError: org.apache.cxf.common.jaxb.JAXBUtils.closeUnmarshaller(Ljavax/xml/bind/Unmarshaller;)V

    1.启动tomcat时报错:Error creating bean with name 'payInfService': Invocation of init method failed; neste ...

  8. 自我复制的3D打印机

    RepRap 是人类历史上第一部可以自我复制型的机器. https://reprap.org/wiki/RepRap RepRap 是一部可以生成塑料实物的免费桌面型 3D 打印机.由于 RepRap ...

  9. hdu2328 Corporate Identity 扩展KMP

    Beside other services, ACM helps companies to clearly state their “corporate identity”, which includ ...

  10. Python __name__变量

    原文: http://blog.csdn.net/u011511601/article/details/53504355 Python使用缩进对齐组织代码的执行,所有没有缩进的代码,都会在载入时自动执 ...