学习一下python,这里对python的基础知识做一个整理。似等了一百年忽而明白,即使再见面,成熟地表演,不如不见。

python的一些应用

一、类似于java中的MessageFormat用法

word = "{0} love {1}"
wordList = ('huhx', 'linux')
print(word.format(*wordList))
print(word.format('huhx', 'linux')) str_word = "{name} love {lover}"
wordMap = dict(name='huhx', lover='linux')
print(str_word.format(name='huhx', lover='linux'))
print(str_word.format(**wordMap))
print(str_word.format_map(wordMap))

打印结果都是:huhx love linux

二、关于正则中贪心匹配的理解

import re
data = 'Thu Feb 15 17:46:04 2007::uzifzf@dpyivihw.gov::1171590364-6-8'
print(re.search('\d+-\d+-\d+', data).group()) # 1171590364-6-8
print(re.match('.+\d+-\d+-\d+', data).group()) # Thu Feb 15 17:46:04 2007::uzifzf@dpyivihw.gov::1171590364-6-8
print(re.match('.+(\d+-\d+-\d+)', data).group(1)) # 4-6-8
print(re.match('.+?(\d+-\d+-\d+)', data).group(1)) # 1171590364-6-8

三、python中简单的json请求

import http.client
import json conn = http.client.HTTPConnection("hostname")
data = {
'TellerId': '***',
'Password': '***'
}
payload = json.dumps(data)
headers = {
'content-type': "application/json"
}
conn.request("POST", "/mweb/login.do", payload, headers)
res = conn.getresponse()
data = res.read() print(data.decode("utf-8"))

四、python中简单的mysql连接

首先可以通过:pip install pymysql安装pymysql。

import pymysql

db = pymysql.connect("localhost","root","pass","database", charset='utf8')
cur = db.cursor()
cur.execute('select * from puser') for i in cur.fetchall():
print(str(i))
db.close()

五、python中使用sftp连接的简单使用

首先可以通过:pip install paramiko安装sftp的支持

import paramiko

host = 'hostname'
port = 22
user = 'root'
passwd = 'password'
# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname=host, port=port, username=user, password=passwd)
# 执行命令
stdin, stdout, stderr = ssh.exec_command('ls -al')
# 获取命令结果
result = stdout.read()
print(result)
# 关闭连接
ssh.close()

六、python简单连接操作redis

首先启动redis服务,然后下载python的redis包:pip install redis。

import redis
r = redis.Redis(host='127.0.0.1',port=6379)
r.set('name', 'linux')
print(r.get('name')) # linux

七、python简单的dom对xml的解析

from xml.dom.minidom import parse
import xml.dom.minidom DOMTree = xml.dom.minidom.parse("huhx.xml")
collection = DOMTree.documentElement
persons = collection.getElementsByTagName('person') for person in persons:
if person.hasAttribute('name'):
print('my name is %s: ' % person.getAttribute('name'))
age = person.getElementsByTagName('age')[0].childNodes[0].data
address = person.getElementsByTagName('address')[0].childNodes[0].data
print('age = %d, address = %s.' % (int(age), address))

测试的huhx.xml文件如下:

<persons>
<person name="huhx">
<age>12</age>
<address>wuhan</address>
</person>
<person name="linux">
<age>1</age>
<address>hubai</address>
</person>
</persons>

运行的结果如下:

my name is huhx:
age = , address = wuhan.
my name is linux:
age = , address = hubai.

八、python中csv文件的读写

  csv文件可以在excel表中建立数据,最后保存的时候存为csv格式的文件。

  • 先看一个读取csv文件的内容,测试的huhx.csv文件内容如下:
import csv

csvFile = open('huhx.csv', 'r')
reader = csv.reader(csvFile) for item in reader:
for subItem in item:
print(subItem, end=" ")
print()

运行的结果如下:

姓名 年龄 地址
huhx china
linux hubai
liuling wuhan
  • python写入内容到csv文件
import csv

fileHeader = ['username', 'age', 'address']
data1 = ['huhx', 342, 'hubai']
data2 = ['linux', 56, 'wuhan']
data3 = ['tomhu', 44, 'china'] csvFile = open('huhx.csv', 'a')
writer = csv.writer(csvFile)
# writer.writerow(fileHeader)
# writer.writerow(data1)
# writer.writerow(data2)
# writer.writerow(data3)
writer.writerows([fileHeader, data1, data2, data3])
csvFile.close()

九、python中的两个list相加

list1, list2 = [2, 3, 4], [3, 4, 6]
tempList = list1 + list2
print(tempList) # [2, 3, 4, 3, 4, 6]
tempList = list()
for x, y in zip(list1, list2):
tempList.append(x + y)
print(tempList) # [5, 7, 10]
list1.extend(list2)
print(list1) # [2, 3, 4, 3, 4, 6]

十、python中的列表生成式

>>> [x * x for x in range(1, 5) if x % 2 ==0]
[4, 16]
>>> [x * x for x in [1, 3, 4] if x % 2 ==0]
[16]
>>> [x * 2 for x in 'abc' if x == 'a']
['aa']

友情链接

Python基础---->python的使用(二)的更多相关文章

  1. Python基础学习笔记(二)变量类型

    参考资料: 1. <Python基础教程> 2. http://www.runoob.com/python/python-chinese-encoding.html 3. http://w ...

  2. (Python基础教程之十二)Python读写CSV文件

    Python基础教程 在SublimeEditor中配置Python环境 Python代码中添加注释 Python中的变量的使用 Python中的数据类型 Python中的关键字 Python字符串操 ...

  3. python基础---->python的使用(三)

    今天是2017-05-03,这里记录一些python的基础使用方法.世上存在着不能流泪的悲哀,这种悲哀无法向人解释,即使解释人家也不会理解.它永远一成不变,如无风夜晚的雪花静静沉积在心底. Pytho ...

  4. python基础-python解释器多版本共存-变量-常量

    一.编程语言的发展史 机器语言-->汇编语言-->高级语言,学习难度及执行效率由高到低,开发效率由低到高 机器语言:二进制编程,0101 汇编语言:用英文字符来代替0101编程 高级语言: ...

  5. python基础--python基本知识、七大数据类型等

    在此申明一下,博客参照了https://www.cnblogs.com/jin-xin/,自己做了部分的改动 (1)python应用领域 目前Python主要应用领域: 云计算: 云计算最火的语言, ...

  6. Python基础--Python简介和入门

    ☞写在前面 在说Python之前,我想先说一下自己为什么要学Python,我本人之前也了解过Python,但没有深入学习.之前接触的语言都是Java,也写过一些Java自动化用例,对Java语言只能说 ...

  7. Python基础笔记系列十二:requests模块的简单应用

    本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! httpbin httpbin这个网站能测试 HTTP 请求和响应的各种信 ...

  8. python基础之数据类型(二)

    Python3 元组 Python 的元组与列表类似,不同之处在于元组的元素不能修改. 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. 不可变的tupl ...

  9. Python基础学习参考(二):基本语法

    一.基本语法 既然是学习一门语言,它肯定有区别与其它语言的语法规则,现在就来解释一下python的语法规则是什么? 注释:通过"#"可以对python进行注释,注意是单行注释,如果 ...

随机推荐

  1. windows下mysql密码忘了怎么办?【转】

    前两天在windows的command命令行下,用mysqladmin导入过一些站上数据 结果悲催了,mysql.user的内容被改了,root上不了了,权限也变了. 结合了网络上的集中方法,终于成了 ...

  2. Blog

    http://www.cnblogs.com/digdeep/archive/2015/11/16/4968453.htmlhttp://it.dataguru.cn/article-8406-1.h ...

  3. EXP无法导出空表的表结构解决办法

    原文链接:http://www.cnblogs.com/Mr_JinRui/archive/2012/11/05/2755035.html 早的一次使用oracle 11g导出数据发现有的表丢失了,感 ...

  4. adb 架构

    adb是什么? adb就是Android调试桥,很形象啊. 先来看adb原理的逻辑图: ADB架构adb由两个物理文件组成:adb/adb.exe运行于PC端,包括Linux.Windows.Mac ...

  5. java http post上传文件

    1.上传接口 @IgnoreToken @RequestMapping(value = "/upload/cpicFile", method = RequestMethod.POS ...

  6. less语法(二)混合属性

    摘要: 前面介绍了less的变量和extend语法,今天在研究下混合属性(Mixin).混合可以说是less的另一个特征,你可以将通用属性定义在一块,然后使用时直接调用此混合属性. 混合: 在 LES ...

  7. Java按钮控件数组实现计算器界面

    编写程序,通过按钮数组来管理界面中的所有按钮控件,从而使用最少的代码实现模拟的计算器界面. 思路如下: 创建一个类,通过extends使其继承窗体类JFrame: 创建一个JFrame对象,使用JFr ...

  8. error:undefined reference to 'net_message_processor::net_message_processor()'

    net_message_processor是我自己定义的一个类,文件名称分别是net_message_processor.h  & net_message_processor.cpp 和CCD ...

  9. 【代码审计】JTBC(CMS)_PHP_v3.0 任意文件上传漏洞分析

      0x00 环境准备 JTBC(CMS)官网:http://www.jtbc.cn 网站源码版本:JTBC_CMS_PHP(3.0) 企业版 程序源码下载:http://download.jtbc. ...

  10. PHP代码审计笔记--弱类型存在的安全问题

    0x01 前言 PHP 是一门弱类型语言,不必向 PHP 声明该变量的数据类型,PHP 会根据变量的值,自动把变量转换为正确的数据类型. 弱类型比较,是一个比较蛋疼的问题,如左侧为字符串,右侧为一个整 ...