Python 入门必会的就是基础知识学习,我也曾反复学习,而不入门。一天突然发现一个规律,豁然开朗,分享给大家!
python最开始学的就是变量及变量的类型。常用的有字符、数字、列表、集合、元组、字典,然后有函数和类。我发现的规律就是所有的这些,都可以理解为变量被定义的过程,只是越来越复杂而已。
举例:
a = "hello’ #这是一个字符串的定义
a =['hello','word'] #这个是定义一个列表,包括两个字符串(可以理解为更复杂的字符串定义,就肯容易理解记忆了)
def printme( hello ):
return hello ;
printme(hello); #这个函数就是定义了一个字符串而已。(工作中往往定义一个变量后,通过复杂的处理再返回一个值而已,通俗理解函数就是对一个值的复杂处理。)
只是简单分析了我的逻辑,下面附上我学习时候的笔记:
#python基础语法
1. 变量 ---一切不带引号的字母都是变量
(不用申明,直接赋值即可!它对数字和字符是一样赋值的,只是字符必须加引号的区别。一般两个引号是没区别的,只有字符中有空格会单引号的时候会用双引号)
数字&字符变量的赋值:(这个是最简单,最常用的变量)
常规 赋值语法:
counter = 100 # 赋值整型变量
( miles = 1000.0 # 浮点型 )
name = "John" # 字符串
进阶 1:(多个变量一条语句写法)(等号两边有空,逗号没空)
a = b = c = 1
a, b, c = 1, 2, "john"
进阶 2:(变量可以赋值给另外一个或多个变量的计算表达式)(等号和计划符号都 有空)
+ - * / % **
a = b * 8
#字符串的拼接可以使用+号(变量最简单的作用,没有之一)
方法1:直接通过加号(+)操作符连接
website = 'python' + 'tab' + '.com'
方法2:join方法
listStr = ['python', 'tab', '.com']
website = ''.join(listStr)
方法3:替换
website = '%s%s%s' % ('python', 'tab', '.com')
高级变量的赋值:(列表,集合,字典)- 赋值了许多值的变量而已!
列表:(小量数据,增删改查的首选)
list1 = ['physics', 'chemistry', 1997, 2000]
list2 = list(1, 2, 3, 4, 5, 6, 7 )
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
元组:(可以理解它就是列表的子集,支持列表的一些方法。一般会把它当整体处理,且速度快!!)
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5, 6, 7 )
print "tup1[0]: ", tup1[0]
print "tup2[1:5]: ", tup2[1:5]
字典:处理大量数据,增删改查的首选。是一对值,速度不会随数量增加而变慢。
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print "dict['Name']: ", dict['Name']
print "dict['Age']: ", dict['Age']
集合:(去重,大量数据的比较)
空集合必须是set,不然创建的是字典。
parame = {value01,value02,...}
或者
set(value)
2.语句 -- 不区分数字和字符,都要相同的符号判断!!!
if(一般是用6中符号对数据的约束,特殊的情况是==可以是字符;and多次使用可以用括号)-括号优先级最高
可以加或不加else elif 皆可
num = 9
if num >= 0 and num <= 10: # 判断值是否在0~10之间
print 'hello'
# 输出结果: hello
num = 10
if num < 0 or num > 10: # 判断值是否在小于0或大于10
print 'hello'
else:
print 'undefine'
# 输出结果: undefine
num = 8
# 判断值是否在0~5或者10~15之间
if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):
print 'hello'
else:
print 'undefine'
# 输出结果: undefine
whlie (同if的语法结构,只是里面一般带有条件变量的运算,让它跳出循环)
count = 0
while count < 5:
print count, " is less than 5"
count = count + 1
else:
print count, " is not less than 5"
True 死循环 (或写1 或a == 1)
for (in后面是字符串的话,会被一个个循环;如果是列表和元组才会分开打印;一般数字用range();也可以用else)
for letter in 'Python': # 第一个实例
print '当前字母 :', letter
fruits = ['banana', 'apple', 'mango']
for fruit in fruits: # 第二个实例
print '当前水果 :', fruit
print "Good bye!"
当前字母 : P
当前字母 : y
当前字母 : t
当前字母 : h
当前字母 : o
当前字母 : n
当前水果 : banana
当前水果 : apple
当前水果 : mango
Good bye!
fruits = ['banana', 'apple', 'mango']
for index in range(len(fruits)):
print '当前水果 :', fruits[index]
print "Good bye!"
循环中常用语句:
break:一般循环中if + break,当变量为x,终止循环。
continue:一般循环中if + continue, 当变量为x,什么也不干(当前循环终止),继续下一个循环。
pass: 一般在循环中if + pass ,去执行特殊意义的事情,但是pass只是站位语,无意义,对循环也没影响。
break:
for letter in 'Python': # 第一个实例
if letter == 'h':
break
print '当前字母 :', letter
var = 10 # 第二个实例
while var > 0:
print '当前变量值 :', var
var = var -1
if var == 5: # 当变量 var 等于 5 时退出循环
break
print "Good bye!"
continue:
while var > 0:
var = var -1
if var == 5 or var == 8:
continue
print '当前值 :', var
print "Good bye!"
pass:
for letter in 'Python':
if letter == 'h':
pass
print '这是 pass 块'
print '当前字母 :', letter
print "Good bye!"
3.函数的使用
a.基础函数(一个或多个变量整合到一起,并进行数据的”柔合")
def printme( str ):
"打印任何传入的字符串"
print str;
return;
printme("我要调用用户自定义函数!");
printme("再次调用同一函数");
b.4种参数
必要参数:(就是函数定义的时候,写的参数,必须传入,不然报错)
举例:略
关键字参数:(当参数很多的时候,传入的时候如果按参数,顺序可能比较繁琐,这个参数可以不按顺序定义)
def printinfo( name, age ):
"打印任何传入的字符串"
print "Name: ", name;
print "Age ", age;
return;
printinfo( age=50, name="miki" );
默认函数:(函数被定义的时候,参数已经定义了值。这样调用的时候可以不写个这个参数,它会是默认值)
#可写函数说明
def printinfo( name, age = 35 ):
"打印任何传入的字符串"
print "Name: ", name;
print "Age ", age;
return;
#调用printinfo函数
printinfo( age=50, name="miki" );
printinfo( name="miki" );
不定长参数:(有时候参数的个数超级多,写太麻烦就写个通用的方法,然后在函数内可以循环它,依次处理)
def printinfo( arg1, *vartuple ):
"打印任何传入的参数"
print "输出: "
print arg1
for var in vartuple:
print var
return;
# 调用printinfo 函数
printinfo( 10 );
printinfo( 70, 60, 50 );
c.拉姆达函数(就是一个变量定义成lambda 表达式,但是调用就是函数的形式(需要带参数)!!!;很重要一点就是一个表达式)
sum = lambda arg1, arg2: arg1 + arg2;
# 调用sum函数
print "相加后的值为 : ", sum( 10, 20 )
print "相加后的值为 : ", sum( 20, 20 )
##在函数内的变量叫局部变量!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
4.CLASS的知识点:
(初始化函数定义了所有函数的参数self,以及实例化的时候的参数-self后面的参数。掌握了class才是真正面向对象开发的标准形式)
class Cat:
"""定义了一个Cat类"""
#初始化对象
def __init__(self, new_name, new_age):
self.name = new_name
self.age = new_age
#方法
def eat(self):
print("猫在吃鱼....")
def drink(self):
print("猫正在喝kele.....")
def introduce(self):
print("%s的年龄是:%d"%(self.name, self.age))
#创建一个对象
tom = Cat("汤姆", 40)
tom.eat()
tom.drink()
#tom.name = "汤姆"
#tom.age = 40
tom.introduce()
lanmao = Cat("蓝猫", 10)
#lanmao.name = "蓝猫"
#lanmao.age = 10
lanmao.introduce()
运行结果:
猫在吃鱼....
猫正在喝kele.....
汤姆的年龄是:40
猫的年龄是:10
人生感悟:
面试的时候,如果老想面试官问的问题,说话就会紧张;反之,放平心态,就像平常一样的说话,就会很自然。
---Eden