2小时玩转python基础(上)

来源:互联网 发布:淘宝二级页面打不开 编辑:程序博客网 时间:2024/06/09 22:43

2小时玩转python基础(上)

本文章仅供完全没有python基础的同学观看

python是一门动态语言,没有类型标识,所有类型都是运行时识别


先看下python的基本数据类型
有整数 ,同java int 如 5
有浮点数 ,同java float 如 5.54523
有字符串,同java String  有细微差别 可以用单引号 如'abc' "abc"都可以
有布尔值,同java要么是True要么是False 但要注意大写
布尔值可以参与逻辑运算 and 同java && or 同java ||  not 同java !
空值为None
特点也是一样的短路运算


变量赋值很简单 ,这里面不需要声明,变量写出来就可以直接用
eg: a=1 a=‘abc’
学过java的同学会问a不是整形吗,又赋值字符串,会报错,但注意前面说了,这是一门动态语言
类型运行时识别,所以这样用是非常正确的


java中注释都是//
python注释为#


java中如果字符串中需要转义的字符,在每个需要转义的字符前需要加入\
python也支持这种写法,但是提供了更加简单的方法
字符串前加个r
eg:

a=r'"fjkkfkfk\fmer'
如果你print a的话,会显示"fjkkfkfk\fmer
对了这里说下python的打印
不需要什么括号
直接print 你要打印的东东就可以了
多个内容的话,隔开,打印的时候,会显示空格
回道刚刚说的转义,r''转义只能转义单行,而多行转义需要r''' '''',恩python中表示多行
就会用到''' '''这个以后会经常用到


java中经常遇到乱码错误,常见修改方法为修改为utf-8
python中可以在字符串前加u就可以
eg:u''' 你好
你好'''
如果中文字符串在Python环境下遇到 UnicodeDecodeError,这是因为.py文件保存的格式有问题。可以在第一行添加注释
# -*- coding: utf-8 -*-

python简单的整数和浮点数运算同java一样
2个整数运算结果得整数
整数和浮点数运算先将整数换为浮点数,然后再进行运算


python中允许布尔值和其他类型做逻辑运算
python中将 0,none,''视为false
其他数值和非空字符串视为true
eg:a = 'python'
print 'hello', a or 'world'
打印结果为 'hello' python
world被短路


java集合框架里面有一种叫做list
python也有list,而且表示一样都是列表
list有序集合,可以随时删除和修改元素
用法的话如
eg:a=["fhjhef",2222,True]
ok,我们可以看到一个列表里面可以放不同的元素
因为python是动态语言
其实java也可以(不用泛型的话),但Java毕竟是偏静态语言这样容易出错
而python这种动态运用展示了它的灵活性
查:
我们可以按照索引去访问,如刚刚的a[0]
记住只要是计算机语言索引几乎都是0开始
python有更Nb的可以倒序访问,如a[-1] 那就是倒数第一个元素
增:
2种方法
1.a.append('fhjjj')
这种方法只能加入到list尾部
2.a.insert(1,'krkfk')
这种方法可以将元素插入到任意位置,第一个参数就是位置索引
删:
删除就一个方法的2个重载
a.pop(),将最后一个元素删除,并打印
a.pop(-2),将倒数第二个元素删除,并打印
改:
超级简单
a[-1]=5423
上面就是list的增删改查的基本操作


python还有另外一种数据结构就是tuple
也是有序列表
这个东西说像数组其实也差不多,但数组里面的元素可以修改,这玩意不能
t=('fjkjkfjk',True,5523)
我们能干什么,只能通过索引查找
查找方法和list一样
eg:
t[-2]
其他什么都不能做
注意一点:tuple这东西,创建单元素的时候a=(5)
是不是感觉和a=5一样,括号被作为优先级处理
所以为了避免问题,创建单元素的时候
a=(5,)末尾加个,这样就没歧义了
tuple定义不可变,但真的不能变吗?
如果给tuple里面放个list,在list上面做文章
那便一切皆有可能,因为list这引用并没变
eg:
t=[5,6]a=(4,5,t)t[0]=1a(4,5,[1,6])


再说下几个简单的条件循环语句吧
直接看eg:
age = 20if age >= 18:    print 'your age is', age    print 'adult'print 'END'
可以看到,if语句没有任何括号
模式为:
if 条件:
执行语句
其他语句
python中空格和Tab特别重要相当于java中的大括号


再看下if-else
if age >= 18:    print 'adult'else:    print 'teenager'


模式为
if 条件:
执行语句
else:
执行语句


如果多个if else呢
if score>=90:    print 'excellent'elif score>=80:    print 'good'elif score>=60:    print 'passed'else:    print 'failed'


ok,简单明了吧
模式为
if 条件:
执行语句
elif 条件:
执行语句
elif 条件:
执行语句
else:
执行语句
注意一般缩进,按TAB就可以


然后是循环,先看for循环
eg:
L = ['Adam', 'Lisa', 'Bart']for name in L:    print name
模式为
for 变量名(将该位置的值赋予这个变量) in 集合(list,tuple,其他):
执行语句
基本情况和java中的foreach差不多


while循环
eg:
while x<100:    sum+=x    x=x+2
模式
while 执行的条件:
执行语句
想跳出循环的话break 就可以,这个和java一样
while和for都可以
eg:
sum = 0x = 1while True:    sum = sum + x    x = x + 1    if x > 100:        breakprint sum

如果调过一次循环的话continue,也同java
嵌套循环:
for x in ['A', 'B', 'C']:    for y in ['1', '2', '3']:        print x + y


注意缩进,再次强调这里的缩进同java中的{}

1 0
原创粉丝点击