【颓废篇】人生苦短, 我用python(二)
当时产生学习python的欲望便是在看dalao们写脚本的时候… 
虽然dalao们好像用的是js来着.. 
不过现在好像很多爬虫也可以用python写啊… 
所以学python没什么不妥. 
而且csdn整天推广告说python怎么怎么有前途不是..
那就好好学呗.
python的long类型超赞! 因为是自带高精的… 不知道比C++高到哪里去了(单指高精方面
而且好像乘法是自带fft的… 碾压自己现在都写的不熟的辣鸡高精十条街啊…
所以我们就可以去水FFT的模板题n=int(input())
a=int(input())
b=int(input())
print(a*b)这代码好像还算长的…
不过用long的时候数字后面记得加个L哦~python的除和模是挺迷的, 因为python的除法会往负无穷取整.
>>>-1/3
-1这就和C/C++不是很一样… 但两者又都遵守
a%b=a−b∗(a/b)这一点, 所以取模也挺不一样的
>>>-1%3
2当然只对于负数会出现一些问题 遇到的时候要注意一下.
哦 对了 python里面小数也可以有整除和取模这种操作:>>>4.7//3.5 # 要用两个除号
1.0 #结果是浮点型的
>>>4.7%3.5
1.2还有乘方
>>>16**15
1152921504606846976然而并没有++和–这样的操作让C++选手不很习惯..
自己打代码的时候常常产生C++的习惯, 但是python声明变量是不带类型的..
    a=3 # 这样就行了 前面不要写int
string list dict基本就对应着std::string std::vector std::map了 背一下操作名就行了(比如append)
而元组这东西就有点诡了, 说是像结构体但并不能修改…
不过还是挺有用的(比如当多重返回值)强转的话函数式强转就行了
a='Hello, World!'
b=2333
c=a+str(2) #字符串的加法表示连接
print c
# 下面是结果
Hello, World!2333
- python里面的判断是有 
- if
 - elif (else if的abbr.)
 - else 
几种的, 记得后面要加”:” 然后不用{}括程序块而是用缩进.
所以python程序写大了要准备游标卡尺... 
 
栗子
a=3
b=2
if(a>b):
    print 'a>b'
elif(a==b):
    print 'a==b'
    print 'a-b=0' #不管几行 只要是一层的 缩进一样就表示了
else: #每个地方都要打':'
    print 'a<b'
哦 然后有一种操作叫pass就是空语句 为了保持结构的完整而设计
a=3
b=2
if(a>b):
    pass #什么都不输出
else:
    print 'a<b'
- 循环的话python中有for循环和while循环, 但是没有do..while循环 
然后还有熟悉的break continue 然后还有新伙伴pass
这个for循环搭配list有一种foreach的感觉 
l=[1,3,5,7,9]
s=0
for i in l: #':'
    s+=i
print s 
而常见的for循环
for(int i=1;i<=10;i=i+2);
则大概长这样
for i in range(1,11,2): #python的range左闭右开 最后一个参数表示步进
    pass
while循环就很普通没啥说的了
- python中各种序列很有意思, 这里以一个list为例
 
>>>l=[1,2,3,4,5,6,7]
>>>l[2] #python下标从0开始
3
>>>l[-2] #表示读取倒数第二个元素
6
>>>l[3:6] #截取 依然左闭右开 结果类型还是个list
[4,5,6]
>>>l[:4] #还可省略前面或后面的数字
[1,2,3,4]
>>>a=4
>>>l[:a] #还可以传变量
[1,2,3,4]
>>>l[-10] #越界会报错
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: list index out of range
>>>l[15:19] #截取越界并不会报错 会截出空序列
[]
>>>len(l) #len函数获取长度
7
>>>max(l) #还能查询最大值 最小值
>>>7
>>>l=[2,3,1,4,6,5]
>>>l.sort() #list还封装了sort reverse等方法
>>>l
[1,2,3,4,5,6]
是不是觉得功能很强大呢! 
然后是一些字典(dict)的知识, 比如
- 这是个map而不是multimap
 - 键值必须不可变. 所以可以是数字、字符串、元组, 但不能是列表.
 - 查询的时候用封装过的方法就好了
 
#coding=utf-8
d={
    'Name':'Enzymii',
    'Age':3,
    'Height':2.25,
    'Letters':['E','n','z','y','m','i','i']
}
print d.get('Name')
print d.has_key('Weight')
print d.values()
# 下面是结果
Enzymii
False
[3, ['E', 'n', 'z', 'y', 'm', 'i', 'i'], 'Enzymii', 2.25]
所以还是挺好用的… (尤其是用来提交表单的时候~
就先写这些吧, 都是写很简单很基础的东西…
【颓废篇】人生苦短, 我用python(二)的更多相关文章
- Python开发【第二篇】:初识Python
		
Python开发[第二篇]:初识Python Python简介 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏 ...
 - 人生苦短,我用Python(1)
		
一.人生苦短,我用Python 在文章的开头给大家介绍一下Python语言,作者Guido von Rossum.对,就是图中的“人生苦短我用Python”那哥们.你可能以为我会用很多文字介绍Pyth ...
 - python 二(续)——面向对象编程进阶
		
1.类的成员 2.类成员修饰符 3.类的特殊成员 在python第二课——面向对象初级,文章中介绍了面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一 ...
 - python 二维数组读入
		
study from : https://www.cnblogs.com/reaptomorrow-flydream/p/9613847.html python 二维数组键盘输入 1 m = int( ...
 - Java多线程编程实战指南(核心篇)读书笔记(二)
		
(尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76651408冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...
 - Python 二维码制作
		
Python 二维码制作 先介绍python 二维码制作的第三方库 QRCode .MyQR QRCode 生成这个二维码只用三行 import qrcode img = qrcode.make ...
 - 【颓废篇】人生苦短,我用python(一)
		
谁渴望来一场华(ang)丽(zang)的python交易! 最近突然产生了系统学习python的想法. 其实自从上次luogu冬日绘板dalao们都在写脚本就有这种想法了. 最近被计算几何势力干翻的我 ...
 - Python开发【第十三篇】:jQuery(二)
		
http://www.bubuko.com/infodetail-1438296.html 处理完毕需要整理贴进来 Python之路[第十三篇]jQuery案例-Form表单&插件及扩展 ...
 - Python开发【第九篇】:HTML (二)
		
python[第十四篇]HTML基础 时间:2016-08-08 20:57:27 阅读:49 评论:0 收藏:0 [点我收藏+] 标签: 什么是HTML? H ...
 
随机推荐
- 其它课程中的python---2、NumPy模块
			
其它课程中的python---2.NumPy模块 一.总结 一句话总结: numpy在数组计算方面又快又方便 1.NumPy中的ndarray是一个多维数组对象,该对象由哪两部分组成? -实际的数据 ...
 - Python print命令/ 解压序列
			
Python 命令参数 print 命令 : #默认的print是有个 空格,和换行的 # print(sep= ' ') # print(end = '/n') a = 'sunjinchao' ...
 - 【23. 合并K个排序链表】【困难】【优先队列/堆排序】
			
合并 k 个排序链表,返回合并后的排序链表.请分析和描述算法的复杂度. 示例: 输入: [ 1->4->5, 1->3->4, 2->6] 输出: 1->1-> ...
 - duboo注解使用详解
			
一.背景 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行. 当越来越的的接口与实现类的增加后,duboo的xml配置会越来越多,为了防止 ...
 - 一点响应式Web设计与实现思路
			
摘要: 是否还在为你的应用程序适配PC端,移动端,平板而苦苦思索呢,是否在寻找如何一套代码适配多终端方式呢,是否希望快速上手实现你的跨终端应用程序呢,是的话,那就看过来吧,本文阐述响应式UI设计相关理 ...
 - Spring-Boot中如何使用多线程处理任务
			
看到这个标题,相信不少人会感到疑惑,回忆你们自己的场景会发现,在Spring的项目中很少有使用多线程处理任务的,没错,大多数时候我们都是使用Spring MVC开发的web项目,默认的Controll ...
 - JS对象 charAt() 方法可返回指定位置的字符。返回的字符是长度为 1 的字符串。
			
返回指定位置的字符 charAt() 方法可返回指定位置的字符.返回的字符是长度为 1 的字符串. 语法: stringObject.charAt(index) 参数说明: 注意:1.字符串中第一个字 ...
 - 关于用Linux桌面版当工作系统这件事
			
Linux稳定性好,Linux软件开放--不过等到决定把Linux当作日常工作用系统时,就一言难尽了-- 我日常工作的需求有: 笔记本扩展屏幕 Golang开发 docker/kubernetes 输 ...
 - canvas插入图片设置背景,渐变
			
##在canvas中插入图片(需要image对象) 1.canvas操作图片时,必须要等图片加载完才能操作 2.drawImage(image, x, y, width, height) 其中 ima ...
 - css悬浮在页面顶端
			
.header{ position:fixed; margin-top:; width:%; z-index:; } .body{ position:relative; padding-top:119 ...