[python] File path and system path
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的更多相关文章
- python内置模块[sys,os,os.path,stat]
python内置模块[sys,os,os.path,stat] 内置模块是python自带功能,在使用内置模块时,需要遵循 先导入在 使用 一.sys 对象 描述 sys.argv 命令行参数获取,返 ...
- python os.walk()和os.path.walk()
一.os.walk() 函数声明:os.walk(top,topdown=True,onerror=None) (1)参数top表示需要遍历的顶级目录的路径. (2)参数topdown的默认值是“Tr ...
- C#基础精华04(文件流,文件操作,File、Directory、Path,Directory)
文件流 FileStream 可读可写 大文件 释放 StreamReader 读取 释放 StreamWriter 写入 释放 using 中释放 File 可读可写 小文件 操作文 ...
- 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 ...
- Python join() 方法与os.path.join()的区别
Python join() 方法与os.path.join()的区别 pythonJoinos.path.join 今天工作中用到python的join方法,有点分不太清楚join() 方法与os.p ...
- exec: "docker-proxy": executable file not found in $PATH
在执行 docker run 操作的时候,一直报如下错误: [root@etcd1 vagrant]# docker run --name redis-6379 -p 6379:6379 -d --r ...
- python脚本中selenium启动浏览器报错os.path.basename(self.path), self.start_error_message) selenium.common.excep
在python脚本中,使用selenium启动浏览器报错,原因是未安装浏览器驱动,报错内容如下: # -*- coding:utf-8 -*-from selenium import webdrive ...
- Python os模块、os.path模块常用方法
os模块:os模块在python中包含普遍的操作系统功能,下面列出了一些在os模块中比较有用的部分. os.sep 可以取代操作系统特定的路径分隔符.windows下为 "\" o ...
- VSCode调试go语言出现:exec: "gcc": executable file not found in %PATH%
1.问题描述 由于安装VS15 Preview 5,搞的系统由重新安装一次:在用vscdoe编译go语言时,出现以下问题: # odbcexec: "gcc": executabl ...
随机推荐
- 免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)
前面介绍了六种.NET组件,其中有一种组件是写文件的压缩和解压,现在介绍另一种文件的解压缩组件SharpZipLib.在这个组件介绍系列中,只为简单的介绍组件的背景和简单的应用,读者在阅读时可以结合官 ...
- Asp.net Core准备工作
1.安装环境 安装.Net Core SDK 安装VS2015 Update3 安装DotNetCore.1.0.1-VS2015Tools.Preview2.0.2.exe 2.新建Core工程 项 ...
- ASP.NET Core 中文文档 第四章 MVC(3.7 )局部视图(partial)
原文:Partial Views 作者:Steve Smith 翻译:张海龙(jiechen).刘怡(AlexLEWIS) 校对:许登洋(Seay).何镇汐.魏美娟(初见) ASP.NET Core ...
- Node.js npm 详解
一.npm简介 安装npm请阅读我之前的文章Hello Node中npm安装那一部分,不过只介绍了linux平台,如果是其它平台,有前辈写了更加详细的介绍. npm的全称:Node Package M ...
- BlockingCollection使用
BlockingCollection是一个线程安全的生产者-消费者集合. 代码 public class BlockingTest { BlockingCollection<int> bc ...
- PHP设计模式(五)建造者模式(Builder For PHP)
建造者模式:将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示的设计模式. 设计场景: 有一个用户的UserInfo类,创建这个类,需要创建用户的姓名,年龄,爱好等信息,才能获得用 ...
- Android开发学习—— shape标签的使用
参考这片文章http://www.cnblogs.com/armyfai/p/5912414.html
- Struts2日期类型转换
针对日期类java.util.Date进行类型转换,要求客户端使用"yyyy-MM-dd","yyyy/MM/dd"中的任意一种输入,并以"yyyy- ...
- 杂项之python描述符协议
杂项之python描述符协议 本节内容 由来 描述符协议概念 类的静态方法及类方法实现原理 类作为装饰器使用 1. 由来 闲来无事去看了看django中的内置分页方法,发现里面用到了类作为装饰器来使用 ...
- java的poi技术读取Excel数据到MySQL
这篇blog是介绍java中的poi技术读取Excel数据,然后保存到MySQL数据中. 你也可以在 : java的poi技术读取和导入Excel了解到写入Excel的方法信息 使用JXL技术可以在 ...