第一部分 编程基础

@表达式

**
%
//

@

>>> int(3.4)

3

>>>round(3.555,2)
3.56

@判断条件时:0和0.0和‘’都是False

@终止进程

sys.exit()

@

>>> m=[1,2,3]
>>> print(m.pop())
3
>>> print(m)
[1, 2]

@陷入无限循环时

ctrl+c

@

print('cats','dog',sep=',')#Seperate
cats,dog

@try…except中,try里面有多个的话,一旦有触发except的,就不会再继续try。

@多重赋值

cat=['fat','black','loud']
size,color,disposition=cat

@sort()使用ASCII码排序,排序大写在小写前面

>>>spam=['a','Z','b','z']
>>>spam.sort(key=str.lower)#lower后面没有括号
>>>spam
['a', 'b', 'Z', 'z']

@字典中的get和setdefault

items={'apple':3,'cup':2}
print("i get {0} apples and {1} eggs".format(items.get('apple',0),items.get('egg',3)))
print(items)
print('---')
print("i get {} apples and {} eggs".format(items.setdefault('apple',0),items.setdefault('egg',3)))
print(items)

@迭代字符串,数各字母数

>>> message='lalalalawoshimaibaodexiaohangjia'

>>> count={}

>>> for character in message:

    count.setdefault(character,0)

    count[character]=count[character]+1

>>> print(count)

@漂亮打印

import pprint
>>> pprint.pprint(count)

@方法

index()
insert()
remove() tuple()
str()
list()

@转义字符:反斜杠

@is字符串方法

isalpha()
isalnum()
isdecimal()
isspace()

只有字母;

只有字母和数字;

只有数字;

只有空格、制表符、换行符。

@其它字符串方法

startswith()
endswith() join()
split() center(20,'=')
strip('abc')

@监控鼠标和键盘

https://www.jb51.net/article/146800.htm

调用剪切板(自制密码保管器)

import pyperclip,sys
pw={...}
count=sys.argv[1]
pyperclip.copy(pw[count])#保存到剪切板,直接鼠标右键粘贴就行
print(pyperclip.paste())#打印剪切板里的内容

第二部分 自动化任务

@正则

re.compile()==>search==》match对象==》group()#仅匹配一次

re.compile(()())==...》groups()

()?
(){}?
.*? #是满足条件的情况只匹配一次,即最小匹配.
*
+
|
.#除换行外通配,包括汉字;compile里面加re.DOTALL,则匹配所有字符
re.I
re.VERBOSE

[]内的普通正则符号不会被解释;

@读写文件

os

os.path.join(a,b)
os.chdir(a)
os.getcwd()
os.makedirs(a)

当前目录的相对路径‘.\’

os.path.abspath('.')==os.getcwd()

path=r'E:\新python资料20180629\基础及爬虫入门视频'
os.path.basename(path)
>>>'基础及爬虫入门视频'
os.path.dirname(path)
>>>'E:\\新python资料20180629' os.path.getsize(path)
>>>4096
os.listdir(path)#本层的文件及文件夹名
>>>['01-Python基础-第01天(Linux基本操作)', '02-Python基础-第02天(Linux基本操作)',...] os.path.exists(path)

永久删除文件

os.unlink(path)
os.rmdir(dir)#必须是空文件夹
shutil.rmtree(dir)

删到垃圾箱

send2trash(path)

查看所有文件夹和文件名

import os
for flodername,subfolders,filenames in os.walk(path):
print(flodername)
for subfloder in subfo.ders:
print('{}:{}'.format(flodername,subfloder)
for filename in filenames:
print('{}:{}'.format(flodername,filename)

@zipfile模块

@批量调整文件名

"""批量调整名字"""
import re,os,shutil
#正则表达式
re_or=re.compile(r'(\d+)-(\d+)-(\d+)(.*)')
#检索文件夹内所有名字并匹配,组成新名字
path='' for or_name in os.listdir(path):
day_name=re_or.search(or_name).group(1)
mon_name=re_or.search(or_name).group(2)
year_name=re_or.search(or_name).group(3)
last_name=re_or.search(or_name).group(4)
new_name=mon_name+day_name+year_name+last_name
#***关于group的位置,compile(r'(1)(2(3))(4)')
or_file_path=os.path.join(path+or_name)
new_file_path=os.path.join(path+new_name)
shutil.move(or_file_path,new_file_path)

@项目:将一个文件夹备份到zip文件,P168

@第十章未看

@webbrowser,p192

@selenium,p210及以后

@

《python编程快速上手》的更多相关文章

  1. 简单物联网:外网访问内网路由器下树莓派Flask服务器

    最近做一个小东西,大概过程就是想在教室,宿舍控制实验室的一些设备. 已经在树莓上搭了一个轻量的flask服务器,在实验室的路由器下,任何设备都是可以访问的:但是有一些限制条件,比如我想在宿舍控制我种花 ...

  2. 利用ssh反向代理以及autossh实现从外网连接内网服务器

    前言 最近遇到这样一个问题,我在实验室架设了一台服务器,给师弟或者小伙伴练习Linux用,然后平时在实验室这边直接连接是没有问题的,都是内网嘛.但是回到宿舍问题出来了,使用校园网的童鞋还是能连接上,使 ...

  3. 外网访问内网Docker容器

    外网访问内网Docker容器 本地安装了Docker容器,只能在局域网内访问,怎样从外网也能访问本地Docker容器? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Docker容器 ...

  4. 外网访问内网SpringBoot

    外网访问内网SpringBoot 本地安装了SpringBoot,只能在局域网内访问,怎样从外网也能访问本地SpringBoot? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装Java 1 ...

  5. 外网访问内网Elasticsearch WEB

    外网访问内网Elasticsearch WEB 本地安装了Elasticsearch,只能在局域网内访问其WEB,怎样从外网也能访问本地Elasticsearch? 本文将介绍具体的实现步骤. 1. ...

  6. 怎样从外网访问内网Rails

    外网访问内网Rails 本地安装了Rails,只能在局域网内访问,怎样从外网也能访问本地Rails? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Rails 默认安装的Rails端口 ...

  7. 怎样从外网访问内网Memcached数据库

    外网访问内网Memcached数据库 本地安装了Memcached数据库,只能在局域网内访问,怎样从外网也能访问本地Memcached数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装 ...

  8. 怎样从外网访问内网CouchDB数据库

    外网访问内网CouchDB数据库 本地安装了CouchDB数据库,只能在局域网内访问,怎样从外网也能访问本地CouchDB数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Cou ...

  9. 怎样从外网访问内网DB2数据库

    外网访问内网DB2数据库 本地安装了DB2数据库,只能在局域网内访问,怎样从外网也能访问本地DB2数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动DB2数据库 默认安装的DB2 ...

  10. 怎样从外网访问内网OpenLDAP数据库

    外网访问内网OpenLDAP数据库 本地安装了OpenLDAP数据库,只能在局域网内访问,怎样从外网也能访问本地OpenLDAP数据库? 本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动 ...

随机推荐

  1. 从原型链探究Javascript这么火的原因

    首先,此文是对于javascript原型链的一些私人见解,若能博君会心一笑,在下荣幸之至! 为了阐述我的理解,首先提前声明一些前置知识,欢迎指正: 栈内存和堆内存: 栈内存每个地址分配的地址长度较窄, ...

  2. Linux 系统的用户和组

    目录 1. 用户及组相关文件 2. 用户相关查询 2.1 直接通过cat文件查看用户及组文件内容 2.2 使用下面查询命令查看 3. 使用操作命令修改用户及组相关文件 3.1 专有编辑命令(仅限高级用 ...

  3. 学习笔记CB011:lucene搜索引擎库、IKAnalyzer中文切词工具、检索服务、查询索引、导流、word2vec

    影视剧字幕聊天语料库特点,把影视剧说话内容一句一句以回车换行罗列三千多万条中国话,相邻第二句很可能是第一句最好回答.一个问句有很多种回答,可以根据相关程度以及历史聊天记录所有回答排序,找到最优,是一个 ...

  4. 内网渗透 关于GPO

    网上有很多讲内网渗透的文章,但看来看去还是一老外的博客给力,博客地址:www.harmj0y.net/blog,看完就明白这里面的很多思路都非常好. 做内网时,有时会碰到目标的机器开防火墙,所有端口基 ...

  5. Centos7快速安装docker

    偶然间发现,docker的安装好容易啊 系统环境:centos7.3 yum源: docker:https://mirrors.aliyun.com/docker-ce/linux/centos/do ...

  6. Mvc Session 设置以后再构造函数中取值时为null问题

    在登录界面写了一个session在 别的页面的构造函数中获取始终未null  后来改成 System.Web.HttpContext.Current.Session["User"] ...

  7. [delphi]在DLL中多线程同步Synchronize卡死问题

    在dll中多线程同步调用Synchronize不可以,会出现假死卡住的现象.可通过Sendmessage实现. 转网上其他文章解释: Application.Initialize; begin     ...

  8. Java 序列化 返序列化

    原文: http://www.cnblogs.com/xdp-gacl/p/3777987.html   一.序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化. 把字节序列恢复为对象 ...

  9. C++标准模板类库(STL)之queue初步

    1,STL里有些什么? 包括三个内容:容器.迭代器.算法. 2,容器有哪些? 有stack, vector, queue, deque, list, set, multiset, map, multi ...

  10. python文件管理小计

    1.读取只当路径下所有文件和文件夹 import os def file_name(file_dir): for root, dirs, files in os.walk(file_dir): pri ...