妹子之前学的是java,这个暑假开始接触python。新手入门也没什么太多的经验与认识,不过还是被python的简单方便所震惊,在它这样自由洒脱的风格下做事,再回到一眼一板,一步一个脚印的java怕是会有些不习惯呢~应师兄的建议,像为自己的学习之路做点记录。(编译器:pycharm)
python一句话就能搞定的事情,代码简单得门外汉都能看懂,java 要三行,还包裹着一定的逻辑思维。比如:交换两个数。
python是这样的:
a = 1
b = 2
a, b = b, a(对应赋值)
java是这样的:
int a = 1;
int b = 2;
int c = a;
a = b;
b = c;
python很洒脱。它的代码很轻快。你甚至可以把函数名赋给一个新变量,然后可以用那个新变量来指定函数。像这样:
a = abs() # abs() 求绝对值
a(-2) # 不得不说一下,python函数的调用也是好简单啊!!直接写函数名就可以了耶~
对了,不得不说一下python的序列解包功能,真的是,简单粗暴,方便到不要不要的地步~
上面的第一个例子,交换两个数也就是一个序列解包。
多个数赋值时我们可以这样:a, b, c = 1, 2, 3
python会自动对应好的。
类似地,value = (1, 2, 3 ) a, b ,c = value 也可以。
字典中可以这样用。(popitem可以将一个键值对打包返回,对应赋值给等号左边的值,所以,这里,等号两边数量要对应,同时原字典将该键值对删除)
dict = {"name":"yinglish_", "age:": "20"}
key, value = dict.popitem
print key, value # key = age, value = 20
python的切片,是相当简单直接的截取功能,不比其他语言,python不提供各种字符串截取操作,但是它的切片真的就非常方便地实现获取。
For an example:)
L = range(100)
print L[2:100:1] # 取出2~100(不包括100)的所有偶数,数字间隔为2(默认为1,可以不写)
S = "abcd"
print S[ :2] # ab
print S[-3:-1] # bc 可以实现倒序取值,记住,倒数第一个的索引为-1
还有格式有得一说,一开始觉得,python确定变量甚至都不用先定类型真是神奇呐,句尾打不打分号也无所谓也真是随意。
后来发现,python以缩进识别代码快,一般一个层次的缩进是四个空格,相当与一个tab键。这个很重要,一般我们新手出问题的话可以注意一下自己的缩进,没准就是这个坑了。。。。(==b)
做注释时,代码行内注释要离代码两个格,#号后一个空格再写注释。不然会有很多下划线,反正我看了就是不爽。也不知道是不是跟编译器的选择有关。
接下来简单一窥python数据结构,语句等方面的知识。
噢,对了,在java中,我们是可以用加号把字符串和其他类型数据连接起来的,其他类型数据会被自动转换为字符串类型,但是python中不可以。我们需要”显示转换“(嘻嘻,这里是java的术语)
(java)int number = 9;
System.out.println("There are " + number);
(python) number = 9;
print "You need to change the type obviously, like this: " + str(number)
总而言之,派神是很好很简单的语言。我也才刚刚入坑,不能归纳出什么好东西。路漫漫其修远兮,边学边记不忘记~
推荐一个特别好的学习资源,我也是在这里学的