Python is an interpreted language.

A python script goes through sourcecode  --> interpreter --> output.

Whereas languages, like C/C++, java,  goes through sourcecode --> compiler --> object code --> executor --> output

1. invoking the interpreter in 2 ways:

$ python

the python interpreter will be evoked.

$ python helloworld.py

the python script helloworld.py will be executed.

2. The interpreter and its encoding

Using the following statement. By default, Python source files are treated as encoded in ASCII

# -*- coding: encoding -*-
# -*- coding: cp1252 -*-

3. Keywords in python:

(32 keywords in python 2.7) if, elif, else, for, while, return, in, is, try, except, raise, break, continue,   not, and, or,   def, class,   import, from,   print, yield, pass,  exec, global, lambda, assert, as, del, finally, global, with

# the use of lambda
def make_increment(n):
return lambda x: x+n #lambda function # the use of print
print "Hello, World." # the use of yield
# the use of exec # the use of del
li = [2,4,6,67,"t", 12.4]
del li[0] #delete li[0]
del li #delete li

4. Built-in functions in python 2.7, totally 76 built-in functions

abs()
divmod()
input()
open()
staticmethod()
all()
enumerate()
int()
ord()
str()
any()
eval()
isinstance()
pow()
sum()
basestring()
execfile()
issubclass()
print()
super()
bin()
file()
iter()
property()
tuple()
bool()
#filter(function, iterable):
def func:
return x%3==0 or x%5==0
filter[f, range(2,25)]
#return a list
len( myvar ) return the length of myvar 
range():
bytearray() float() list() raw_input() unichr() callable() format() locals() reduce() unicode() chr() frozenset() long() reload() vars() classmethod() getattr()
# map()
def cube(x):
return x*x*x
map(cube, range(1,11))
# will generate a list of 10 element
repr()
xrange()
cmp()
globals()
max()
reversed()
zip()
compile()
hasattr()
memoryview()
round()
__import__()
complex()
hash()
min()
set()
delattr()
help()
next()
setattr()
dict()
hex()
object()
slice()
dir( myObj ) means show the information of myObj
id( myObj ) means return the address of myObj
oct()
sorted()

True, False (the value of a bool type )

5. Variables and expressions:

comments starts with a  # to the end of a line.

A variable should have a type, and use the built-in function type( myObj )  will tell you the type.

numeric operations are +, -, *, **, /, %

logical operators are and, or, not

    A new assignment makes an existing variable refer to a new value, and stop referring to the old value.

6. flow control and definition of function/class

# if statement

if <condition>:

<statement>

elif <condition>:

<statement>

else:

<statement>

# for statement

for <element> in <statement>:

<statement>

# while statement

while <condition>:

<statement>

# flow control

break    # break out of the innermost enclosing for/while loop

continue # continue with the next iteration of the loop

pass     # do nothing

# define a function

def <name> ( <parameter_list> ):

<statement>

# define a class

class <name>:

pass

# define a class inheriting from a parent class

class <name>(<base_class>):

pass

7. string, a built-in type, " xxx " or ' xxx '

single or double-quoted. The string is immutable.

fruit = "banana"
fruit[1] = "c" #Error
len(fruit) #the length of string
last_ch = fruit[-1] #the last char in the string
letter = fruit[2] #the 2nd char in string
slice_piece = fruit[0:3] #print [0,3) that is "ban"

8. list, [ ]

using [ ], the list is mutable which means we can modify/add/delete elements in the list.

list is a data type(data structure) in python, so it has some methods(operations), like append(), insert(), remove(), ...

# the following three squares are the same

squares = [x**2 for x in range(10)

squares = []

for x in range(10):

    squares.append(x**2)

    squares = map(lambda x:x**2, range(10))

(Actually, the element in the list is the pointer/reference)

li = [0] * 3    # li = [0,0,0]
a = "banana" # reference to a string
b = "banana" # reference to the same string
id(a) #135044008
id(b) #135044008 c = [1,2,3]
d = [1,2,3]
id(c) #reference to a list id = 3500264
id(d) #reference to another list id = 3428408
c = d #c and d refer to the same list id = 3428404. the list whose id=3500264 will be discarded. rst = []
rst.append(3) #rst = [3] #Passing a list as a parameter to a function passes a reference to the list, not a copy of the list
rst = myFunction(a)

9. Tuple, ( )

Tuple is immutable.

t1 = ('a',) #create a tuple with one single element, DO NOT miss that comma

    t2 = ('a') # t2 is a string, not a tuple

  a, b = b, a   #tuple assignment, the number of left variable should be the same as the number of right

10. Dictionary, {key : value , key2 : value2 }

key-value pairs.

The elements of a dictionary appear in a comma-separated list. key value key2 : value2 } Each element consists of a key-value pair.

Using immutable type as an index.

eng2number = {} # an empty dictionary
eng2number['one'] = 1 #
eng2number['two'] = 2 #
print eng2number # {'one':1,'two':2}
print eng2number['one'] # 1
delete eng2number['one'] #delete a element

11. set, { }

A set is an unordered collection with no duplicate elements. Using curly braces to create a set, or using set() to create a set from a list

basket = ['apple', 'orange', 'berry', 'orange', 'apple']    # a list

fruit = set(basket)    # fruit is a set initiated from a list, no duplicate in the fruit

fruit2 = {'apple', 'orange', 'berry', 'apple'}    # fruit2 = {'apple', 'orange', 'berry'}

fruit2.add("apple")    # add one element  

12.Summary:

slice operator [ ] 

operator+

assignment operator=

function parameter passing and return value

in operation

not in operation

14. Modules

from <module> import *

from <module> import <function_or_var_or_name>

import <function_or_var_or_name>

dir( <module> )   # see what's in the module

type( <module> )  # see the type of module

15. Class

 

  

    

1. get files in the current directory with the assum that the directory is like this:

a .py

|----dataFolder

|----Myfolder

|----1.csv , 2.csv, 3.csv

 # a.py
1 def getFileList():
file_list = []
cur_dir = os.getcwd()
for folder in os.walk(cur_dir).next()[1]:
f = os.path.join(cur_dir, folder)
for filename in os.walk(f).next()[1]:
file_path = os.path.join(f, filename)
file_list.append(file_path)
print "the total files are:\n", file_list
return file_list

in line 4, get all the folders in the cur_dir.

If want to get all files, in the cur_dir, than use:

for myfiles in os.walk(cur_dir).next()[2]:

2. get all files (only files not including folders) in one directory

os.listdir("some_dir")

[python] File path and system path的更多相关文章

  1. python内置模块[sys,os,os.path,stat]

    python内置模块[sys,os,os.path,stat] 内置模块是python自带功能,在使用内置模块时,需要遵循 先导入在 使用 一.sys 对象 描述 sys.argv 命令行参数获取,返 ...

  2. python os.walk()和os.path.walk()

    一.os.walk() 函数声明:os.walk(top,topdown=True,onerror=None) (1)参数top表示需要遍历的顶级目录的路径. (2)参数topdown的默认值是“Tr ...

  3. C#基础精华04(文件流,文件操作,File、Directory、Path,Directory)

    文件流 FileStream  可读可写  大文件  释放 StreamReader 读取   释放 StreamWriter 写入   释放 using 中释放 File 可读可写  小文件 操作文 ...

  4. WebStorm failing to start with 'idea.system.path' error

    WebStorm failing to start with 'idea.system.path' error Ask Question up vote 2 down vote favorite   ...

  5. Python join() 方法与os.path.join()的区别

    Python join() 方法与os.path.join()的区别 pythonJoinos.path.join 今天工作中用到python的join方法,有点分不太清楚join() 方法与os.p ...

  6. exec: "docker-proxy": executable file not found in $PATH

    在执行 docker run 操作的时候,一直报如下错误: [root@etcd1 vagrant]# docker run --name redis-6379 -p 6379:6379 -d --r ...

  7. python脚本中selenium启动浏览器报错os.path.basename(self.path), self.start_error_message) selenium.common.excep

    在python脚本中,使用selenium启动浏览器报错,原因是未安装浏览器驱动,报错内容如下: # -*- coding:utf-8 -*-from selenium import webdrive ...

  8. Python os模块、os.path模块常用方法

    os模块:os模块在python中包含普遍的操作系统功能,下面列出了一些在os模块中比较有用的部分. os.sep 可以取代操作系统特定的路径分隔符.windows下为 "\" o ...

  9. VSCode调试go语言出现:exec: "gcc": executable file not found in %PATH%

    1.问题描述 由于安装VS15 Preview 5,搞的系统由重新安装一次:在用vscdoe编译go语言时,出现以下问题: # odbcexec: "gcc": executabl ...

随机推荐

  1. 用神奇的currentColor制作简洁的颜色动画效果

    先上一个兼容性总结图:老版本ie可以直接用复杂方法了,套用某表情包的话:  2016年了,做前端你还考虑兼容IE6?你这简直是自暴自弃! 好了,知道了兼容性,我们可以放心的使用了. 在CSS3中扩展了 ...

  2. Python(九)Tornado web 框架

    一.简介 Tornado 是 FriendFeed 使用的可扩展的非阻塞式 web 服务器及其相关工具的开源版本.这个 Web 框架看起来有些像web.py 或者 Google 的 webapp,不过 ...

  3. [BootStrap] 富编辑器,基于wysihtml5

    在我的周围,已经有很多人在使用BootStrap,但对于任何一个带留言.评论.提问.文章编辑功的网站,编辑器永远是重中之重,显然,早期的编辑器完全没考虑过BootStrap的出现,或皮肤跟网站不匹配, ...

  4. 使用HttpClient的优解

    新工作入职不满半周,目前仍然还在交接工作,适应环境当中,笔者不得不说看别人的源码实在是令人痛苦.所幸今天终于将大部分工作流畅地看了一遍,接下来就是熟悉框架技术的阶段了. 也正是在看源码的过程当中,有一 ...

  5. ntp

    一: 在一台可以连接外网的服务器A上配置ntp: 配置  /etc/ntp.conf  文件: server 202.120.2.101            # local clock (LCL) ...

  6. iOS -- CocoaPods

    CocoaPods 是什么? CocoaPods 是一个负责管理 iOS 项目中第三方开源库的工具.CocoaPods 的项目源码在 GitHub( https://github.com/CocoaP ...

  7. crontab介绍

    1.Cron的启动与关闭 由于Cron是Linux的内置服务,可以用以下的方法启动.关闭这个服务: /sbin/service crond start           //启动服务/sbin/se ...

  8. Unity插件之plyGame教程:DiaQ对话系统

    本文为孤月蓝风编写,转载请注明出处:http://fengyu.name/?cat=game&id=296 DiaQ是plyGame旗下的一款对话及任务系统.拥有可视化的对话及任务编辑器,能够 ...

  9. CYQ.Data V5 从入门到放弃ORM系列:教程 - MProc类使用

    MProc介绍 MProc:是一个用于执行SQL或存储过程的数据库操作类,它轻量高性能地类似于Dapper. MProc:它出现的场景很少,因为MAction自身就能处理掉90%-100%的数据操作( ...

  10. U3D DrawCall优化手记

    在最近,使用U3D开发的游戏核心部分功能即将完成,中间由于各种历史原因,导致项目存在比较大的问题,这些问题在最后,恐怕只能通过一次彻底的重构来解决 现在的游戏跑起来会有接近130-170个左右的Dra ...