Python学习日记
江林楠学习了一下午后给大家呈现的20分钟速成Python——
一些基本的语法:
1.python无变量声明 直接a = []即可。
2.python为对齐语言,用制表符表示语句块的嵌套。
3.python语句末尾无;
4.python不用{}表示语句块,而是采用:,如
if a == b:
a = c
for a in b:
print(a)
5.a.b的形式的函数调用,可以是对象调用函数(同js),也可以命名空间.函数
6.单行注释使用#a,多行注释使用"""aaaa"""
一些用法:
列表:
cast = ["a",'b',1,["a",2]]
cast.insert(0,"honghehe")
cast.remove('a')
cast.append('ac')
myPop = cast.pop(0);#弹出第0个元素,并返回
if isinstance(cast):#判断是否为列表
print(cast,end = '')
列表访问:cast[0],case[1:3](1,2项)
for a in cast:
print(a)
更多的用法请查阅python的BIF(内置函数)
字符串处理:
a = "abc adj.b"
location = a.find('.')
#结果['abcadj','b']
b = a.strip().split('.')
也可(b,c) = a.strip().split('.')
#恢复为abcadj.b
d = b + '.' + c
循环:
#b为列表,a为列表中每一项
for a in b:
xxx
#相当于0-49,a是迭代器
for a in range(50):
xxx
#一般的while
count = 0
while count < 50:
xxx
count = count + 1
建议使用for循环
函数:
def funcName(para1,para2 = 0,para3 = 1):
print(para1);
有=的参数是可以缺省的
如果只需传入1,3则调用时需要使用
funcName(1,para3 = 4)
命名空间:
import ab
含义是导入ab.py
使用ab中的函数需ab.funcName(paras)
文件和异常
#这个标准库与目录相关
import os
os.getcwd()
os.chdir("")
"""异常处理"""
try:
data = open("honghehe.txt",w)
print("aaa",file = data)
except IOError as err:
print(str(err))
pass
#这句可以不要
finally:
#locals为当前作用域中的变量集合
if 'data' in locals():
data.close()
比较通用的:
#与finally等价,自动判定data in locals()
try
with open("honghehe.txt") as data1, open("hhe.txt") as data2:
print("aaa",file = data)
print("bb",file = data2)
except IOError as err
print(str(err))
读文件:r为默认模式,可不写
data = open("honghehe.txt",'r')
print(data.readline(),end = '')
#可以把文件的data看做一个一行为一个元素的列表
for each_line in data:
xxx
腌制数据:
import pickle
#wb是二进制打开
with open("honghehe.txt",'wb') as fp:
pickle.dump(mydata,fp)
with open("honghehe.txt",'wb') as fp:
mydata = pickle.load(fp)
这样对应的文件读写为python默认格式,有利于将数据输入输出一般化
排序
a.sort()
#a不变
b = sorted(a)
推导列表(映射):将a列表通过func映射为b
b = [func(each) for each in a]
集合:
与数学定义一致,列表中的无重复项
除去b中所有重复的元素,排序不变
c = set(b)
字典:
myDic = {}
#或者
myDic = dict()
myDic['a'] = 'honghehe'
myDic['b'] = 'xixi'
myDic['c'] = ['kakashi','sasuke']
定义时直接:(相当于一个json)
myDic = {'a':'honghehe','b':'xixi','c':['kakashi','sasuke']}
类:
属性:成员变量
方法:成员函数
继承方式,在类名后面用括号打出所继承的类。
class myClass(list):
def _init_(self,m_name = '',m_time = []):
self.name = m_name
#这句话即将myClass的对象扩展为一个列表,可以使用列表的一切功能,也可以用一个已有的列表m_time初始化
self.extend(m_time)
def mySorted():
return sorted(self.m_time)
Python构建:
在.py同目录文件夹下创建setup.py文件
from distutils.core import setup
setup{
name = ''
version =
#需要发布的元数据,即.py文件名
py_modules = ['a','b']
author = 'jln'
author_email =
url =
description =
}
建好后,命令行输入:
python3 setup.py sdist
成功后:
sudo python3 setup.py install
然后只需要import a等语句就可以使用安装好的python包了
发布python包
python3 setup.py register
setup.py sdist upload
具体地安装和上传请见
headfirst 41-48页
Python学习日记的更多相关文章
- Python 学习日记(第三周)
知识回顾 在上一周的学习里,我学习了一些学习Python的基础知识下面先简短的回顾一些: 1Python的版本和和安装 Python的版本主要有2.x和3.x两个版本这两个版本在语法等方面有一定的区别 ...
- Python学习日记 --day2
Python学习日记 --day2 1.格式化输出:% s d (%为占位符 s为字符串类型 d为数字类型) name = input('请输入姓名') age = int(input('请输入年龄 ...
- python学习日记(基础数据类型及其方法01)
数字 int 主要是用于计算的,常用的方法有一种 #既十进制数值用二进制表示时,最少使用的位数i = 3#3的ASCII为:0000 0011,即两位 s = i.bit_length() print ...
- Python学习日记(一):拜见小主——Python
近日学习Python,特将学习过程及一点心得记录于此. 由于之前做过一个Java爬虫的项目,虽然很长时间没有碰过爬虫,但是小郭同学有一颗不死的爬虫心,哈哈.最近在互联网上找一些电影的时候,有很多电影只 ...
- Python学习日记(二十八) hashlib模块、configparse模块、logging模块
hashlib模块 主要提供字符加密算法功能,如md5.sha1.sha224.sha512.sha384等,这里的加密算法称为摘要算法.什么是摘要算法?它又称为哈希算法.散列算法,它通过一个函数把任 ...
- Python 学习日记(第二周)
从这周开始我就正式学习Python 语言了.以后每周都会有一篇有关于学习Python的见闻与大家分享! Python的安装 学习的第一步首先要有一个运行的环境.所以接下来介绍一下安装的步骤. 通过Py ...
- 从CentOS安装完成到生成词云python学习日记
欢迎访问我的个人博客:原文链接 前言 人生苦短,我用python.学习python怎么能不搞一下词云呢是不是(ง •̀_•́)ง 于是便有了这篇边实践边记录的笔记. 环境:VMware 12pro + ...
- Python学习日记:day2
1.格式化输出 name = input("请输入你的名字:") age =input("请输入你的年龄:") job =input("请输入你的工作 ...
- python学习日记(常用模块)
模块概念 什么是模块 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代 ...
随机推荐
- MSBI BigData demo—sqoop import
--sp_readerrorlog 读取错误的信息记录 exec sys.sp_readerrorlog 0, 1, 'listening'查看端口号 首先hadoop环境要配置完毕,并检验可以正常启 ...
- 探索 OpenStack 之(10):深入镜像服务Glance
本篇博文来探讨下镜像服务Glance. 0. 基本概念 0.1 基本功能 Glance提供REST API来支持以下镜像操作: 查询 注册 上传 获取 删除 访问权限管理 0.2 Glance RE ...
- UEditor For ASP.Net Core Use Qiniu
UEditor For ASP.Net Core Use Qiniu 此项目为UEditor提供文件管理; 后端服务使用 ASP.Net Core; 使用七牛提供的云存储; 项目地址 https:// ...
- [转]【HTTP】Fiddler(二) - 使用Fiddler做抓包分析
本文转自:http://blog.csdn.net/ohmygirl/article/details/17849983 上文( http://blog.csdn.net/ohmygirl/articl ...
- NOIP2013普及组 T2 表达式求值
OJ地址:洛谷P1981 CODEVS 3292 正常写法是用栈 #include<iostream> #include<algorithm> #include<cmat ...
- uva 10562 undraw the trees(烂题) ——yhx
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABB4AAAM9CAYAAAA7ObAlAAAgAElEQVR4nOyd25GsupKGywVswAV8wA ...
- 树形DP codevs 1814 最长链
codevs 1814 最长链 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 钻石 Diamond 题目描述 Description 现给出一棵N个结点二叉树,问这棵二叉树中 ...
- 双向广搜+hash+康托展开 codevs 1225 八数码难题
codevs 1225 八数码难题 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description Yours和zero在研究A*启 ...
- ZBrush中的Clip剪切笔刷怎么快速运用
Clip剪切笔刷可以对模型网格进行剪切操作,也可以叫做剪切笔刷.接下来看一下Clip切割笔刷在ZBrush中是如何使用的. 查看更多内容请直接前往:http://www.zbrushcn.com/ji ...
- CSU 1081 集训队分组
题意:有n个学生,比了一场比赛,但是榜单看不到了.现在告诉你m段信息,每段信息的内容是(a,b),表示a的排名比b的高.问你能不能根据这些信息得出这场比赛的前k名. 思路:用拓扑排序找出一组符合k个人 ...