From this blog I will turn to Markdown for original writing.

Source: http://www.liaoxuefeng.com/

list

  • a list could be accessed using positive number (start from 0) in sequence or negative number in reverse sequence. Note that square brackets should be used here;
  • listname.append('...'): add ... as the last element in the list;
  • listname.insert(index, '...'): insert ... as the indexed element of the list;
  • listname.pop(): delete the last element in the list;
  • listname.pop(index): delete the last element in the list;
  • listname[inedx] = '...': replace the indexed element to ...;

    Note: The Python type list is like cell in Matlab, that the elements within one list are not necessarily the same type. The element in a list can even be another list.
>>> example = ['a', 'b', ['c', 'd'], 'e'];
>>> example[2][1]
d # Defind a null list
>>> L = [];
>>> len(L)
0

tuple

  • a list whose elements cannot be changed once initialised. But pay attention that when defining a tuple, you should use round brackets (list: square brackets);
# Defing a null tuple
>>> t = () # Defining a tuple with only one element
>>> t = (1,) # If you defining like this:
>>> t = (1)
1 # t is not a tuple, but an integer: 1
  • just like list, the elements in a tuple can be of different type, so that we could use list to construct an 'alterable tuple'.
>>> t = ('a', 'b', ['A', 'B']);
>>> t[2][0] = 'X';
>>> t[2][1] = 'Y';
>>> t
('a', 'b', ['X', 'Y'])

♥ if-else

  # - pay attention to the colon at the end of each judegmeng sentence;
# - unlike Matlab, there is no *end* at the end of the structure.
if <judgement 1>:
<action 1>
elif <judgement 2>:
<action 2>
elif <judgement 3>:
<action 3>
else:
<action 4>

input

  • When using input(), be cautious about the data type obtain from input(), which is originally str. If number is needed, int() privides a way to convert string to integer.

♥ Loop

  • for...in
>>> sum = 0
>>> for x in range(5): # list(range(5)): [0, 1, 2, 3, 4]
sum = sum + x
>>> print(sum)
10
  • while

    End when the condition is not satisfied.
>>> sum = 0
>>> n = 99
>>> while n > 0:
sum = sum + n
s = n - 2
>>> print(sum)
2500

♥ dict

  • Abbreviation of dictionary, realising correspondance between multiple lists. With 'key-value' structure, dict could speed up the searching process;

  • operation examples:

# Using following dict to replace the following two lists in one time:
# names = ['Mary', 'Edith', 'Sybil']
# birth_order = [1, 2, 3]
>>> downton = {'Mary': 1, 'Edith': 2, 'Sybil': 3} # Using brace here
>>> downton['Mary']
1 # value assignment and obtainment
>>> downton['Edith'] = 2
>>> downton.get('Edith')
2
>>> downton.get('Carson') # no return value if the key does not exist in the dict
>>> downton.get('Cora', -1) # return -1 if 'Cora' is not found
-1
>>> downton.get('Edith', -1) # while if 'Edith' already exists, will
# return the true value no matter what is
# assigned
2 #check if certain elements is in the dict
>>> 'Mary' in d
True
# Value deletion
>>> downton.pop('Sybil')
3
>>> print(downton)
{'Edith': 2, 'Mary': 1}
  • Note

    1 dict consumes a lot of RAM;

    2 keys in dict should be unchanged objects: string, integer are OK while list cannot be a key;

    3 The keys' storing order of dict is different from keys' assignment order;
>>> downton = {'Mary': 1, 'Edith': 2, 'Sybil': 3}   # Using brace here
>>> downton['Mary']
1
>>> print(downton)
{'Edith': 2, 'Sybil': 3, 'Mary': 1}

set

  • Store keys in a non-repeat way(without values);
# A list should be provided as input to initialise a set
>>> s = set([1, 1, 2, 2, 3, 4])
>>> s
{1, 2, 3} # non-repeat keys
  • set_name.add(...): add ... into a set;

  • set_name.remove(...):remove certain key from a sey;

  • Note

    1 like dict, keys in set should be unchanged objects;

    2 advantage of set: good for set operation for its out-of-order and non-repeat nature.

Meet Python: little notes 2的更多相关文章

  1. Meet Python: little notes 3 - function

    Source: http://www.liaoxuefeng.com/ ♥ Function In python, name of a function could be assigned to a ...

  2. Meet Python: little notes

    Source: http://www.liaoxuefeng.com/ ❤ Escape character: '\' - '\n': newline; - '\t': tab; - '\\': \; ...

  3. Meet python: little notes 4 - high-level characteristics

    Source: http://www.liaoxuefeng.com/ ♥ Slice Obtaining elements within required range from list or tu ...

  4. python 100day notes(2)

    python 100day notes(2) str str2 = 'abc123456' print(str1.endswith('!')) # True # 将字符串以指定的宽度居中并在两侧填充指 ...

  5. 70个注意的Python小Notes

    Python读书笔记:70个注意的小Notes 作者:白宁超 2018年7月9日10:58:18 摘要:在阅读python相关书籍中,对其进行简单的笔记纪要.旨在注意一些细节问题,在今后项目中灵活运用 ...

  6. [Python Study Notes]匿名函数

    Python 使用 lambda 来创建匿名函数. lambda这个名称来自于LISP,而LISP则是从lambda calculus(一种符号逻辑形式)取这个名称的.在Python中,lambda作 ...

  7. [Python Study Notes]字符串处理技巧(持续更新)

    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ...

  8. [Python Study Notes]with的使用

    在 Python 2.5 中, with 关键字被加入.它将常用的 try ... except ... finally ... 模式很方便的被复用.看一个最经典的例子: with open('fil ...

  9. [Python Study Notes]实现对键盘控制与监控

    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' ...

随机推荐

  1. 深入.net(多态一)

    代码优化技术: 当您在 编写一个类时,如果您发现你需要编写的“属性”和“方法”曾经在已有的类中实现,则,您可以将其共用的“属性”和“方法”剪切到一个新的“类”中,然后,让两个类共同继承这个“新类”.( ...

  2. 浅谈Java五大设计原则之观察者模式

    定义一下观察者模式: 观察者模式又叫  发布-订阅  模式,定义的两个对象之间是一种一对多的强依赖关系,当一个对象的状态发生改变,所有依赖它的对象 将得到通知并自动更新(摘自Hand First). ...

  3. 【代码笔记】iOS-城市plist

    一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...

  4. 免费开发者证书真机调试App ID失效问题:"Unable to add App ID because the '10' App ID limit in '7' days has been exceeded."解决方案(5月5号)

    免费开发者证书真机调试App ID失效问题:"Unable to add App ID because the '10' App ID limit in '7' days has been ...

  5. CGAffineTransformMakeRotation 实现旋转

    UIImageView *image = [[UIImageView alloc]init]; image.frame = CGRectMake(50, 50, 200, 200); image.im ...

  6. git入门学习(一):github for windows上传本地项目到github

    Git是目前最先进的分布式版本控制系统,作为一个程序员,我们需要掌握其用法.Github发布了Github for Windows 则大大降低了学习成本和使用难度,他甚至比SVN都简单. 一.首先在g ...

  7. WordCount的程序设计没写出来怎么办

    这一星期要完成三个小作业,完成前两个已经让我很吃力的了,现在这个WordCount的编程我都没有头绪,不知道从何下手.虽然要求很看起来很简单,可是不知道怎么去设计这个程序,这两天我也在积极找书学习相关 ...

  8. 玩了一天的Git

    今天的逗比事 Git从学习到使用,也有2个月时间了,一开始也就看看廖雪峰老师的Git教程,跟着做了一遍,感觉非常受用. 遇到一些忘掉的命令,再回去查查也基本都没问题. 但是今天缺遇到了逗比事,回过头来 ...

  9. 自动kill慢查询

    在生产环境中,DB服务器经常会被并发的慢查询压挂,因此事前进行sql审核避免烂SQL很重要.万一不小心慢sql还是跑到线上,并且并发还不小,这是dba肯定会收到告警.dba上线处理第一时间是定位并ki ...

  10. 使用axis调用WebService服务端

    由于项目中要调用其他公司的接口,研究了下axis调用webService这种方式,现将代码贴出,以备以后查阅: package com.xbq; import javax.xml.namespace. ...