赞
踩
之前,项目后台基本都是使用 Java
的 SpringBoot 框架完成的,
而 Python
自去年到现在,一直以来,都是玩着学的,没有想过要应用到项目上。
但近来,科技园这边的吴老师,建议项目中使用 Python
的 Django 框架做后台,因其容易拓展、维护等,这是笨重的 Java
难以企及的。
是时候认真对待 Python
,近来其也火得不行了~
花了一天跳读了一本评价极好的书《Python编程从入门到实战》,以复习一下之前的 Python 基础,同时做了一些小 demo,同时借机对比了 C++、Java、JavaScript
等语言的基础,像读小说般轻松有趣,相当不错的一次体验,分享一下
推荐 Python基础 学习网站:
子雨大数据之Spark入门教程(Python版)
Python教程 - 廖雪峰的官方网站
编程小白的第一本 Python 入门书
Python解释器有两种,也就是说有两种方式执行Python代码——①交互式编程、②脚本式编程
很多初始教程采用交互式编程
这里笔者借助 pycharm,采用脚本式编程。
# 1、全体小写 print('Itaem'.lower()) # 2、全体大写 print('Itaem'.upper()) # 3、连接+ print('Itaem'+'团队') # 4、转义:和当年 C++ 课设常用的‘UI’符号一样作用 print('方向:\n\t大数据\n\t云计算\n\t人工智能') # 5、去空:lstrip 去左空、rstrip 去右空 print('----'+' ITAEM '.strip()+'----') # 6、乘方:Python 特色 print(2**3) # 7、浮点:和 C++ 一致 print(2*0.3,3/2,3.0/2) # 8、字符+ 数字:和 Java 不一样,得先转换先 print('ITAEM有'+str(15)+'个成员') # 9、求模:可以 %2 根据 1/0 定 奇偶 print(5%2)
# 1、列表 CRUD lang=['Java','JavaScript','Python'] # ① 查 # 第一个元素 print(lang[0]) # 最后一个元素,当len=0 时报错,负数即从末尾算起 print(lang[-1]) # ② 改 lang[0]='Go' print(lang) # ③ 增 lang.append('php') print(lang) # ④ 删 del lang[0] print(lang) # ⑤ 删末、用之 print(lang.pop()) print(lang) # ⑥ 删值:只删除第一个指定的值 lang.remove('JavaScript') print(lang) # 2、列表 组织 lang=['Java','C','Python'] # ① 永久排序: # Ⅰ、正:按字母 lang.sort() print(lang) # Ⅱ、反:按字母 lang.sort(reverse=True) print(lang) # ② 临时排序:只排序显示本次 print(sorted(lang)) # print(sorted(lang,reverse=True)) # 反 print(lang) # ③ 倒排序 lang.reverse() print(lang) # ④ 长度 print(len(lang)) # 3、列表 遍历 lang=['Java','C','Python'] # ① for in:和 ES 差不多,就省了( ) for l in lang: print(l) # ② 数值 for v in range(3,9): print(v) # ③ 数值->列表 nums=list(range(3,9)) print(nums) # ④ 统计数字列表 # 最小 print(min(nums)) # 最大 print(max(nums)) # 平均 print(sum(nums)) # ⑤ 列表解析 squares=[v**2 for v in range(3,9)] print(squares) # ⑥ 切片 print(squares[:3]) print(squares[0:3]) print(squares[0:])
ssh=('Spring','Struts2','Hibernate')
print(ssh)
print(ssh[0])
# ① 元组不能修改
# ssh[0]='xxx' # 报错
# ② 遍历
for v in ssh:
print(v)
# 1、创建:基本是 JSON 串、可嵌套 program={ 'C++':'good', 'Java':'well', 'Python':['perfect', 'powerful'], 'other':{ 'php':'easy', 'C#':'windows' } } print(program) # 2、查 print(program['Java']) # 3、增 program['Go']='excellent' print(program) # 4、改 program['C++']='common' print(program) # 5、删 del program['C++'] print(program) # 6、遍历key-value for k,v in program.items(): print(k,v) # 7、遍历key、排序 for k in sorted(program.keys()): print(k) # 8、遍历value:value 嵌套,排不了序 for v in program.values(): print(v)
# 1、if-elif-else 判断 SSM=['Spring','SpringMVC','MyBatis'] # 列表部位空返回 True,否则 False if SSM: print('SSM不为空') elif 'Hibernate' not in SSM: print('Hibernate 不属于SSM系列') else: print('结束') # 2、input 输入:默认字符串 # name=input('your name') # print('hello',name) # age=int(input('your age')) # 字符转数值 # if 18==age: # print('perfect!') # 3、while 循环:break 退出、continue 跳过 i=0 total=0 while i<=100: i = i + 1 if i==5: break if i==4: continue total=total+i print(total)
import mymodule as s # 1、定义函数:传参 def sayHello(name,msg='excellent~'): print(name,msg) return 'that`s all' # 2、参数顺序 sayHello('linhongcun!','well done~') # linhongcun! well done~ sayHello(msg='good~',name='larger5!') # larger5! good~ # 3、默认值:和 C++ 一致 sayHello(name='ITAEM!') # ITAEM excellent~ sayHello('ITAEM!') # ITAEM excellent~ # 4、返回值 print(sayHello('04008')) # 5、列表参数 def update(list): list.append('55开') # ① 原件 list=['Python','Java'] update(list) print(list) # ② 副本:禁止修改列表 update(list[:]) print(list) # 6、不定参数 def show(*lan): print(lan) show('Python') show('Python','JavaScript')
# 继承 object class People(): def __init__(self,hobby='bb'): self.hobby=hobby class Student(People): # 构造方法 def __init__(self,hobby='bb',name='lvcha',age=15): super().__init__(hobby) self.name=name self.age=age # 类似 Java 的 toString def __str__(self): return str(self.hobby+self.name+str(self.age)) # 定义类 内部函数 def showMSG(self): print('your name:',self.name) print('your age',self.age) s1=Student('progra','linhongcun',21) print(s1.hobby) print(s1)
# 1、传统打开、读取、关闭:和 C++ 基本一致 file1=open('xxx.txt','r') #注意路径 #全部输入,打成一行 content=file1.readlines() print(len(content)) print(content) file1.close() # 2、with 在不需要访问文件后将自动关闭 ✔ with open('xxx.txt','r') as file2: print(file2.read()) # 3、新建写入 with open('zzz.txt','w') as file3: file3.write('I like programming\n') file3.write('I love you\n') # 4、追加 with open('zzz.txt','a') as file4: file4.write('I can`t forget you\n')
# 1、try-except-else
try:
# print(1/0)
print(2/5)
except ZeroDivisionError:
print('fail by zero')
else:
print('ok')
import json # 列表 language1=['Python','Java','JavaScript'] # 字典 language2={ 'Python':'powerful', 'Java':'famous', 'JavaScript':'developing' } # 元组 language3=('C++','C','C#','Go') # 1、JSON 写入文件 with open('yyy.txt','w') as file1: # json.dump(language1,file1) json.dump(language2,file1) # json.dump(language3,file1) # 2、读取 JSON 文件 with open('yyy.txt','r') as file2: txt=json.load(file2) print(txt)
import pygame import sys def run(): # 初始化屏幕 pygame.init() # 窗口大小 screen = pygame.display.set_mode((900, 600)) # 窗口标题 pygame.display.set_caption('吃鸡神坑助手') # 浅灰色 bg_color=(230,230,230) image=pygame.image.load('numberOne.png') rect=screen.get_rect() while True: # 监视键盘、鼠标 for event in pygame.event.get(): if event.type==pygame.QUIT: sys.exit() # 背景颜色 screen.fill(bg_color) # 图片 screen.blit(image,rect) # 显示窗口 pygame.display.flip() # 运行 run()
参考文章:
使用模块的方法:Python3导入自定义模块的3种方式
使用__.ini.py 以模块化:python引入导入自定义模块和外部文件
1.__init__.py
def show():
print('hello')
2.test.py
from CrashProject import other
other.show()
letter = ['a', 'b', 'c']
num = ['1', '2']
# []->()
list = (a + b for a in letter for b in num)
print(list)
for a in list:
print(a)
list = [a + b for a in letter for b in num]
print(list)
类似 JavaEE Spring 框架的 AOP
# 模拟登陆拦截
def AOPTest(func):
print("---登陆前---")
func()
print("---登陆后---")
@AOPTest
def f1():
print('调用方法')
class Student(object):
@property
def birth(self):
return self._birth
@birth.setter
def birth(self, value):
self._birth = value
s1=Student()
s1.birth=18
print(s1.birth)
class Animal: def __init__(self, name): self.name = name def talk(self): pass @staticmethod # 封装 def animal_talk(obj): obj.talk() class Cat(Animal): def talk(self): print('喵') class Dog(Animal): def talk(self): print('汪') d = Dog("dog1") c = Cat("cat1") Animal.animal_talk(c) Animal.animal_talk(d)
1、使用豆瓣加速 pip 模块,如安装:
pip install -i https://pypi.doubanio.com/simple/ django
pip install web.py -i http://pypi.douban.com/simple
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。