python编程口诀_科学网—Python编程技巧汇总 - 高关胤的博文

正在学习python编程,把一些小技巧记录下来备查

======================计算技巧==========================

正常的条件语句如下if a>b:c=aelse:c=b

可以写为以下简洁的语句a=100b=200c=a if a>b else bprint(c)

======================作图==========================

python中可以使用numpy的array来高效处理数组

下面主要列举matplotlib的基本使用方法,以供查找

first plot

#first plot with matplotlib

import matplotlib.pyplot as plt

plt.plot([1,3,2,4])

plt.show()

in order to avoid pollution of global namespace, it is strongly recommended to never import like:

from import *

simple plot

import matplotlib as mpl

import matplotlib.pyplot as plt

import numpy as np

x = np.arange(0.0,6.0,0.1)

plt.plot(x, [xi**2 for xi in x],label = 'First',linewidth = 4,color = 'black')

plt.plot(x, [xi**2+2 for xi in x],label = 'second',color = 'red')

plt.plot(x, [xi**2+5 for xi in x],label = 'third')

plt.axis([0,7,-1,50])

plt.xlabel(r"$\alpha$",fontsize=20)

plt.ylabel(r'y')

plt.title('simple plot')

plt.legend(loc = 'upper left')

plt.grid(True)

plt.savefig('simple plot.pdf',dpi = 200)

print mpl.rcParams['figure.figsize'] #return 8.0,6.0

print mpl.rcParams['savefig.dpi'] #default to 100 the size of the pic will be 800*600

#print mpl.rcParams['interactive']

plt.show()

Python-3

Decorate plot with styles and types

import matplotlib as mpl

import matplotlib.pyplot as plt

import numpy as np

x = np.arange(0.0,6.0,0.1)

plt.plot(x, [xi**2 for xi in x],label = 'First',linewidth = 4,color = 'black') #using color string to specify color

plt.plot(x, [xi**2+2 for xi in x],'r',label = 'second') #using abbreviation to specify color

plt.plot(x, [xi**2+5 for xi in x],color = (1,0,1,1),label = 'Third') #using color tuple to specify color

plt.plot(x, [xi**2+9 for xi in x],color = '#BCD2EE',label = 'Fourth') #using hex string to specify color

plt.xticks(np.arange(0.0,6.0,2.5))

plt.xlabel(r"$\alpha$",fontsize=20)

plt.ylabel(r'y')

plt.title('simple plot')

plt.legend(loc = 'upper left')

plt.grid(True)

plt.savefig('simple plot.pdf',dpi = 200)

print mpl.rcParams['figure.figsize'] #return 8.0,6.0

print mpl.rcParams['savefig.dpi'] #default to 100 the size of the pic will be 800*600

#print mpl.rcParams['interactive']

plt.show()

image

types of graph

image

Bars

import matplotlib.pyplot as plt

import numpy as np

dict = {'A': 40, 'B': 70, 'C': 30, 'D': 85}

for i, key in enumerate(dict): plt.bar(i, dict[key]);

plt.xticks(np.arange(len(dict))+0.4, dict.keys());

plt.yticks(dict.values());

plt.grid(True)

plt.show()

image_1

Pies

import matplotlib.pyplot as plt

plt.figure(figsize=(10,10));

x = [4, 9, 21, 55, 30, 18]

labels = ['Swiss', 'Austria', 'Spain', 'Italy', 'France',

'Benelux']

explode = [0.2, 0.1, 0, 0, 0.1, 0]

plt.pie(x, labels=labels, explode=explode, autopct='%1.1f%%');

plt.show()

image_2

Scatter

import matplotlib.pyplot as plt

import numpy as np

x = np.random.randn(12,20)

y = np.random.randn(12,20)

mark = ['s','o','^','v','>','<','d','p','h','8','+','*']

for i in range(0,12):

plt.scatter(x[i],y[i],marker = mark[i],color =(np.random.rand(1,3)),s=50,label = str(i+1))

plt.legend()

plt.show()

转载本文请联系原作者获取授权,同时请注明本文来自高关胤科学网博客。

链接地址:http://blog.sciencenet.cn/blog-64087-968950.html

上一篇:[转载]“玩伴女郎”误入学术圈

下一篇:APS模板包RevTex的安装方法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/350742.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jsf标签p:ajax_JSF AJAX请求的会话超时处理

jsf标签<p:ajax>JSF AJAX请求的会话超时处理 当我们使用AJAX行为开发JSF应用程序时&#xff0c;在处理Ajax请求的超时情况时&#xff0c;我们可能会遇到问题。 例如&#xff0c;如果您使用的是基于J2EE Form的身份验证&#xff0c;则会话超时后应将正常请求重定向到登录页…

使用javamail发信过程中的一些问题及解决方法

今天在研究javamail发信的过程中&#xff0c;出现了一些小问题&#xff0c;现总结如下&#xff0c;以免后来者走些不必要的弯路&#xff0c;先把完整的能够正常运行的代码示例粘贴如下&#xff1a; 发邮件源代码&#xff1a; package com.hyq.test; import java.util.Propertie…

VIsual Studio编译OpenCV:无法打开python27_d.lib(python36_d.lib)的问题

在用 VS2015 编译 Debug 版的 openCV 源码时&#xff0c;最后一步生成 INSTALL&#xff0c;碰到了下面问题&#xff1a;因为配置 Windows 版 caffe 的需要&#xff0c;我先安装了一个 Anaconda3&#xff08;3.6版本&#xff09;&#xff0c;caffe 最高支支持到 3.5 &#xff0c…

python做硬件自动化测试仪器_基于Python PyVisa和GPIB的硬件测试仪器控制方法

基于Python和GPIB的硬件测试仪器控制方法 背景 在物联网通信时代&#xff0c;嵌入式模块开发越发广泛&#xff0c;自动化测试成为大家老生常谈的话题。对于一些高精度仪器&#xff0c;我们知道它是用GPIB控制用来测试&#xff0c;也希望可以通过一个程序实现自动化控制&#xf…

外点惩处函数法·约束优化问题

版权声明&#xff1a;本文为博主原创文章&#xff0c;未经博主同意不得转载&#xff0c;博客主页 http://blog.csdn.net/i_love_home https://blog.csdn.net/zstu_wangrui/article/details/36242529 外点惩处函数法约束优化问题 外点法惩处函数&#xff08;r添加&#xff0c;SU…

在单元测试和TDD中指定时间的重要性

最近&#xff0c;我一直在写与自动测试有关的更高级的概念&#xff08;主要与Spock有关&#xff09;。 但是&#xff0c;在进行测试培训时&#xff0c;我清楚地看到&#xff0c;通常对特定工具的知识并不是主要问题。 即使使用Spock&#xff0c;也可以编写肿且难以维护的测试&a…

40个Java多线程问题总结

前言 Java多线程分类中写了21篇多线程的文章&#xff0c;21篇文章的内容很多&#xff0c;个人认为&#xff0c;学习&#xff0c;内容越多、越杂的知识&#xff0c;越需要进行深刻的总结&#xff0c;这样才能记忆深刻&#xff0c;将知识变成自己的。这篇文章主要是对多线程的问题…

.pro.user文件

.pro.user 用于记录打开工程的路径&#xff0c;所用的编译器、构建的工具链、生成目录、打开工程的qt-creator的版本等。 当更换编译环境时&#xff0c;要将其删除。

python tkinter实例_python绘制一个图形示例源码(tkinter)

【实例简介】 【实例截图】【核心代码】 # -*- coding: utf-8 -*- #!/usr/bin/python import math from tkinter import * class PTS: def __init__(self): self.x 0 self.y 0 points [] def LineToDemo(): screenx 400 screeny 400 canvas Canvas(width screenx,height…

PHP算法之冒泡排序

//冒泡排序 //①思路,先比较出第一次,找一个最大的值,排到最后; //②重复count遍之后,就能得到排序; //③优化,每一次循环之后不需要再次全部重复; $array [11,5,4,58,1,222,34]; for ($j 0; $j< count($array)-1; $j) { for($i 0 ; $i < count($array)-$j-1; $i){if(…

jaxb 命名空间_在JAXB解组期间应用名称空间

jaxb 命名空间对于某些XML模式来说&#xff0c;它是一组严格的规则&#xff0c;用于规定XML文档的结构方式。 但是对于其他人来说&#xff0c;通常的准则是指出XML的外观。 这意味着有时出于某些原因&#xff0c;人们希望接受不符合XML模式的输入。 在此示例中&#xff0c;我将…

pro文件

配置 注释 以“#”开始&#xff0c;到这一行结束。 快捷键&#xff1a;Ctrl / CONFIG 指定编译器选项和项目配置&#xff0c;值由qmake内部识别并具有特殊意义。 以下配置值控制编译标志&#xff1a; 选项说明release项目以release模式构建。如果也指定了debug&#xff0c;那么…

Java Thread 总结

线程的概述&#xff08;Introduction&#xff09; 线程是一个程序的多个执行路径&#xff0c;执行调度的单位&#xff0c;依托于进程存在。 线程不仅可以共享进程的内存&#xff0c;而且还拥有一个属于自己的内存空间&#xff0c;这段内存空间也叫做线程栈&#xff0c;是在建立…

前端和后端哪个工资高_新媒体运营和网络运维哪个好,哪个工资待遇高,门槛低?...

文/水流云在草青青通常情况下&#xff0c;门槛高低和待遇高低成反比。工资待遇和工作本领成正比。除非你有人脉或贵人&#xff0c;除非你踩狗屎运。门槛低&#xff0c;待遇高的工作对绝大多数人而言是梦话。不知题主朋友的特长是什么&#xff1f;有哪些工作经验&#xff1f;青青…

python框架源码学习

最近下了一个别人的接口测试框架原码来学习 1.有用到logbook模块进行日志管理 2.使用xlrd模块对excel数据表的操作 3.使用自定义的代码输出测试报告 4.使用logger模块记录运行时日志 主要是看了关于接口的代码&#xff1a;封装了http请求的get/post请求 用法&#xff1a; 需要导…

使用TestContainers进行数据库测试

如果您曾经编写过测试数据库交互的代码&#xff0c;例如数据访问对象&#xff0c;那么您很可能遇到了测试中最长期的烦恼之一&#xff1a;为了准确地测试这些交互&#xff0c;需要一个数据库。 为了本文的方便&#xff0c;让我们考虑一个将PostgreSQL用作其环境的一部分的应用…

cuda安装配置VS2013

1.1 安装cuda 首先官网下载安装包&#xff0c;这个就不细说了 &#xff0c;我下的是这个版本cuda_8.0.61_win10.exe&#xff0c;&#xff0c;注意win7和win10版本要对应&#xff0c;千万别弄错了 之后双击会出现如下截图&#xff0c;解压完以后一直点下一步如下图出现这个等半个…

两列布局、三列适应布局、两列等高适应布局。

一. 两列布局&#xff1a;左侧定宽、右侧自适应。 四种方法 &#xff1a;flex 、position、float和负外边距、外边距 1. 使用flex. <!DOCTYPE html> <html> <head><meta charset"utf-8"><title></title><style type"tex…

操作系统的线程和进程的区别_面试官:你熟悉多线程嘛?线程跟进程有什么区别?...

这篇文章跟大家聊聊线程&#xff0c;讲到线程&#xff0c;⼜不得不提进程了~进程我们估计是很了解的了&#xff0c;在windows下打开任务管理器&#xff0c;可以发现我们在操作系统上运⾏的程序都是进程。什么是叫一个进程&#xff1f; 什么叫一个线程&#xff1f;进程&#xff…

以OpenCV为例配置VS第三方库

正常情况下&#xff0c;你拿到的别人的第三方动态库&#xff08;静态库调用方式这里不讲&#xff0c;有另外一篇文章&#xff09;至少应该包含下面三种文件&#xff1a; 1. 头文件&#xff0c;这个一般放在include这样字眼的文件夹下&#xff0c;比如OpenCV的&#xff1a;然后i…