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. Mysql存储引擎比较

    Mysql作为一个开源的免费数据库,在平时项目当中会经常使用到,而在项目当中我们的着重点一般在设计使用数据库上而非mysql本身上,所以在提到mysql的存储引擎时,一般都不曾知道,这里经过网上相关文 ...

  2. 利用Select2优化@Html.ListBoxFor显示,学会用MultiSelectList

    最近需要用到多选框,Asp.Net MVC自带的@Html.ListBox或@Html.ListBoxFor的显示效果太差,于是找到了Select2进行优化,并正式了解了多选框的操作方法. 首先介绍多 ...

  3. 总结30个CSS3选择器

    或许大家平时总是在用的选择器都是:#id  .class  以及标签选择器.可是这些还远远不够,为了在开发中更加得心应手,本文总结了30个CSS3选择器,希望对大家有所帮助. 1 *:通用选择器 ;; ...

  4. 浅谈Web自适应

    前言 随着移动设备的普及,移动web在前端工程师们的工作中占有越来越重要的位置.移动设备更新速度频繁,手机厂商繁多,导致的问题是每一台机器的屏幕宽度和分辨率不一样.这给我们在编写前端界面时增加了困难, ...

  5. Centos6.5 配置Nginx开机自启动

    1.在/etc/init.d/目录下创建 nginx 文件,内容如下: #!/bin/sh # # nginx - this script starts and stops the nginx dae ...

  6. PADS Layout 颜色设置

    一.板框.装配线.标注线配置: 二.个人爱好,我一般把Top pads设置成为浅绿色,Top Trace/vias/2D Line/Text/Cooper设置成为深绿色,Error设置成为黄色,而Bo ...

  7. CentOS 6.3下 安装 Mono 3.2 和Jexus 5.4

    最新更新参看: Centos 7.0 安装Mono 3.4 和 Jexus 5.6 2012年初写过一篇<32和64位的CentOS 6.0下 安装 Mono 2.10.8 和Jexus 5.0 ...

  8. 基于 SailingEase WinForm Framework 开发优秀的客户端应用程序(目录)

    本系统文章将详细阐述客户端应用程序的设计理念,实现方法. 本系列文章以  SailingEase WinForm Framework 为基础进行设计并实现,但其中的设计理念及方法,亦适用于任何类型的客 ...

  9. 自动添加Linux登录账户,并授予sudo权限

    #!/bin/bash USER=test PASS=$USER GROUP=root HOME=/data/home/$USER # if user not exist if [[ $(cat /e ...

  10. CSS3 滤镜

    了解摄影活着美图秀秀之类美图软件的同学对滤镜肯定不陌生,CSS3对各种滤镜效果有了支持,可以做出很多好玩儿效果,走马观花了解一下 语法 filter: function(param); 很很多CSS3 ...