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. go语言:多个[]byte数组合并成一个[]byte

    场景:在开发中,要将多个[]byte数组合并成一个[]byte,初步实现思路如下: 1.获取多个[]byte长度 2.构造一个二维码数组 3.循环将[]byte拷贝到二维数组中 package gst ...

  2. ADO.NET编程之美----数据访问方式(面向连接与面向无连接)

    最近,在学习ADO.NET时,其中提到了数据访问方式:面向连接与面向无连接.于是,百度了一下,发现并没有很好的资料,然而,在学校图书馆中发现一本好书(<ASP.NET MVC5 网站开发之美&g ...

  3. javaScript生成二维码(支持中文,生成logo)

    资料搜索 选择star最多的两个 第一个就是用的比较多的jquery.qrcode.js(但不支持中文,不能带logo)啦,第二个支持ie6+,支持中文,根据第二个源代码,使得,jquery.qrco ...

  4. iosselect:一个js picker项目,在H5中实现IOS的select下拉框效果

    具体文档和demo可以访问github:https://github.com/zhoushengmufc/iosselect 移动端浏览器对于select的展示样式是不一致的,ios下是类似原生的pi ...

  5. 报错:You need to use a Theme.AppCompat theme (or descendant) with this activity.

    学习 Activity 生命周期时希望通过 Dialog 主题测试 onPause() 和 onStop() 的区别,点击按钮跳转 Activity 时报错: E/AndroidRuntime: FA ...

  6. 在将 varchar 值 'xinpian' 转换成数据类型 int 时失败?

    把int类型的值修改为varchar类型的值

  7. REGEX例子

    作为REGEX的例子,代码9.3显示了一个给定的文件有多少行,具有给定的模式,通过命令行输入(注:有更有效率的方式来实现这个功能,如Unix下的grep命令,在这里只是给出了另一种方式).这个程序像下 ...

  8. windows 部署 git 服务器报 Please make sure you have the correct access rights and the repository exists.错误

    这两天在阿里云上弄windows 服务器,顺便部署了一个git服务.根据网上教程一步步操作下来,最后在 remote远程仓库的时候提示 fatal: 'yourpath/test.git' does ...

  9. 【深入浅出jQuery】源码浅析2--奇技淫巧

    最近一直在研读 jQuery 源码,初看源码一头雾水毫无头绪,真正静下心来细看写的真是精妙,让你感叹代码之美. 其结构明晰,高内聚.低耦合,兼具优秀的性能与便利的扩展性,在浏览器的兼容性(功能缺陷.渐 ...

  10. Spark笔记:RDD基本操作(下)

    上一篇里我提到可以把RDD当作一个数组,这样我们在学习spark的API时候很多问题就能很好理解了.上篇文章里的API也都是基于RDD是数组的数据模型而进行操作的. Spark是一个计算框架,是对ma ...