当时产生学习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里面的判断是有
    1. if
    2. elif (else if的abbr.)
    3. 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(二)的更多相关文章

  1. Python开发【第二篇】:初识Python

    Python开发[第二篇]:初识Python   Python简介 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏 ...

  2. 人生苦短,我用Python(1)

    一.人生苦短,我用Python 在文章的开头给大家介绍一下Python语言,作者Guido von Rossum.对,就是图中的“人生苦短我用Python”那哥们.你可能以为我会用很多文字介绍Pyth ...

  3. python 二(续)——面向对象编程进阶

    1.类的成员 2.类成员修饰符 3.类的特殊成员 在python第二课——面向对象初级,文章中介绍了面向对象基本知识: 面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用 类 是一 ...

  4. python 二维数组读入

    study from : https://www.cnblogs.com/reaptomorrow-flydream/p/9613847.html python 二维数组键盘输入 1 m = int( ...

  5. Java多线程编程实战指南(核心篇)读书笔记(二)

    (尊重劳动成果,转载请注明出处:http://blog.csdn.net/qq_25827845/article/details/76651408冷血之心的博客) 博主准备恶补一番Java高并发编程相 ...

  6. Python 二维码制作

    Python 二维码制作 先介绍python 二维码制作的第三方库 QRCode .MyQR QRCode    生成这个二维码只用三行 import qrcode img = qrcode.make ...

  7. 【颓废篇】人生苦短,我用python(一)

    谁渴望来一场华(ang)丽(zang)的python交易! 最近突然产生了系统学习python的想法. 其实自从上次luogu冬日绘板dalao们都在写脚本就有这种想法了. 最近被计算几何势力干翻的我 ...

  8. Python开发【第十三篇】:jQuery(二)

    http://www.bubuko.com/infodetail-1438296.html 处理完毕需要整理贴进来 Python之路[第十三篇]jQuery案例-Form表单&插件及扩展   ...

  9. Python开发【第九篇】:HTML (二)

    python[第十四篇]HTML基础 时间:2016-08-08 20:57:27      阅读:49      评论:0      收藏:0      [点我收藏+] 标签: 什么是HTML? H ...

随机推荐

  1. NX二次开发-创建一个3 x 3矩阵UF_CSYS_create_matrix

    1 NX9+VS2012 #include <uf.h> #include <uf_csys.h> #include <uf_mtx.h> UF_initializ ...

  2. Photon Server的服务器端配置

    Photon Server与Unity3D的交互分为3篇博文实现 (1)Photon Server的服务器端配置 (2)Photon Server的Unity3D客户端配置 (3)Photon Ser ...

  3. 虚拟IP---Linux下一个网卡配置多个IP

    转:http://blog.csdn.net/turkeyzhou/article/details/16971225 Linux下配置网卡ip别名何谓ip别名?用windows的话说,就是为一个网卡配 ...

  4. java排序算法之冒泡排序和快速排序

    总结一下Java排序算法,以便记忆. 各类排序的时间复杂度: 排序方法 时间复杂度(平均) 时间复杂度(最坏) 时间复杂度(最好) 空间复杂度 稳定性 复杂性 直接插入排序 O(n2)O(n2) O( ...

  5. VS2010-MFC(Ribbon界面开发:为Ribbon Bar添加控件)

    转自:http://www.jizhuomi.com/software/253.html 前面一节为大家简单介绍了如何创建Ribbon样式的应用程序框架,本节教程就来初步讲讲怎样为Ribbon Bar ...

  6. C#标准的事件模型

    事件模型的几个规范: 委托类型的名称以EventHandler结束: 委托原型返回值为void; 委托原型具有两个参数:sender表示事件触发者,e表示事件参数: 事件参数的名称以EventArgs ...

  7. 2016CCPC杭州现场赛 B-Bomb /// tarjan缩点

    题目大意: 给定n个爆破点的信息 x y r w 表示爆破点位置为 (x,y) 爆破范围是以位置为圆心 半径为r的圆 引爆这个点的代价为w 引爆某个点时 其他位置在该爆破范围内的爆破点也会被引爆 求引 ...

  8. Django form组件 与 cookie/session

    目录 一.form组件 二.cookie.session 返回Django 组件 一.form组件 1.1 以注册功能为例 注册功能 1.渲染前端标签获取用户输入 --> 渲染标签 2.获取用户 ...

  9. fso文件夹操作用法实操

    Sub 订单转换()Application.ScreenUpdating = FalseOn Error Resume Next Dim fso, fl, m%, n%, p%, q& Dim ...

  10. C#利用资源文件设置软件自适应多语言

    在项目更目录下添加两个资源文件,以适应中英文两种版本,如Resource.zh_CN.resx和      Resource.en-US.resx  ,两个资源文件的ID都一样,值分别配置相应的中英文 ...