简介-数据类型-运输符
python是一门解释性语言具有面向对象的特性,它的特点是语法简介,用它编写一个程序会让看的人像看一本英文小说
例子:把两个变量的值交换
c#:
var a=10; var b=20;
var c=a;
a = b;
b = c;
这里你需要有一个承载变量才能顺利的交换值。
python
a=10;b=20;
a,b=b,a
很简介这样就完成了两个变量值的交换
记得我一次看python代码时完全看不懂这写代码代表着什么含义(本人c#出身)如果不了解语法直接看代码看的很费解
但是了解过python语法后会发现它简洁的语法中包已经含了需要表达的内容。
以下两张图为python基础数据类型和运算符。
一、条件判断
username='admin';password=123456
print('登陆系统')
print('请输入用户名')
name=input()
print('请输入密码')
pwd=input()
if name==username and password==pwd:
print('登陆成功')
else:
print('登陆失败')
二、while与for循环
1.while
count=0
while count<=9:
count+=1
print(count)
else:
print('end')
2.for
(1)for循环遍历
a = {'大脑斧':'大老虎','发福碟':'花蝴蝶','大机狙':'大蜘蛛'}
for x in a:
print(x+'='+a[x])
else:
print('end')
(2)for指定循环第一个参数代表起始第二个参数代表循环结束且不包含自身第三个参数正数代表递增负数代表递减
for x in range(10,0,-1):
print(x)
三、导入模块
import test as te
print(te.a)
#导入模块变量 *为全部变量和函数
from test import a
print(a)
#__init__.py引入包后自动执行文件内的代码适用于初始化内容-比如引入多个系统模块
包和模块是不会重复导入的
四、函数
系统函数与自定义函数
#系统函数-去小数点后两位
a = 1.123456
result = round(a,2)
print(result)
#自定义函数
def myfun(x, z):
return x,z
#序列解包
one,two = myfun(2,3)
print(one,two)
五、面向对象·类
#行为与特征=类
class MyClass():
name='py菜鸟'
age=18
#构造函数
#初始化对象的属性
def __init__(self,name,age):
self.name = name
self.age = age
print('实例化调用')
def outInf(self):
print(self.name,self.age)
mc = MyClass('cl',16)
mc.outInf()
print(mc.name)
五-1、类的继承与属性、方法权限
from test4 import MyClass
#面向对象
class SonClass(MyClass):#继承
#类变量
name='py菜鸟'
age=18
#构造函数
#初始化对象的属性
def __init__(self,name,age):
#实列变量
self.name = name
self.age = age
#实列方法
def outInf(self):
print(self.name,self.age)
#私有方法或变量在名字前面加两个下划线
def __MyPrivateMethods():
print('我的私有方法')
#类方法 适用于操作类变量
@classmethod
def AgeSum(cls):
cls.age +=1
print(cls.age)
#静态方法
@staticmethod
def MyStatic():
print(MyClass.age)
mc = MyClass('cl',16)
#通过.可以添加实列变量,不可以定义私有变量
mc.__addbl=111
print(mc.__addbl)
mc.outInf()
#print(mc.name)
六、python解析json
import json
json_str='{"姓名":"老王","职业":"男模","年龄":18}'
#反序列化
info = json.loads(json_str)
print(info)
json_obj=[
{"姓名":"老王","职业":"男模","年龄":18},
{"姓名":"老王","职业":"男模","年龄":18}
]
list_info=json.dumps(json_obj)
print(list_info)
七、枚举仅支持3.4之后的版本
from enum import Enum
class Types(Enum):
t1 = 1
t2 = 2
t3 = 3
t4 = 4
t5 = 5
types = Types
print(types.t1.value)
print(types.t1.name)
八、闭包
def curve_pre():
a = 25
def curve(x):
return a*x*x
return curve
a=10
f = curve_pre()
print(f(2))
def factory(pos):
def go(step):
#声明变量不是局部变量,记忆住上级调用的状态
nonlocal pos
new_pos=pos+step
pos=new_pos
return new_pos
return go
tourist=factory(0)
print(tourist(2))
print(tourist(3))
print(tourist(5))
九、全局变量
origin = 0
def go(step):
#global声明全局变量
global origin
new_pos = origin+step
origin=new_pos
return new_pos
print(go(5))
print(go(10))