Python basic (from learn python the hard the way)
1. How to run the python file?
python ...py
2. UTF-8 is a character encoding, just like ASCII.
3. round(floating-point number)
4. %r print the way you write. It prints whatever you write, even if you have special characters, such as '\n'.
5. how to open a file?
- from sys import argv
- script, filename = argv
- txt = open(filename)
- print(txt.read())
- ah = input(">")
- print(ah.read())
6. how to edit a file?
- from sys import argv
- script, filename = argv
- target = open(filename, 'w') # open for writing, truncating the file first
- target.truncate()
- line1 = input()
- line2 = input()
- target.write(line1)
- target.write("\n")
- target.write(line2)
- target.close()
6. copy a file
- from sys import argv
- from os.path import exists # os.path is a module of python and we need to use its exists function
- script, from_file, to_file = argv
- print("Copying from %s to %s" % (from_file, to_file))
- in_file = open(from_file);
- indata = in_file.read() #write in one line: indata = open(from_file).read()
- print("The input file is %d bytes long" % len(indata)) #return the number of bytes of indata
- print("Does the output file exist? %r" % exists(to_file))
- out_file = open(to_file, 'w') #we need ot write the new file
- out_file.write(indata) #directly use indata file to write out_file
- out_file.close()
- in_file.close()
- #much more easier one
- open(argv[2], 'w').write(open(argv[1]).read())
7. functions in python
- def print_two(*args):
- a, b = args
- print("haha %r, and %r" % (a, b))
- def haha():
- print("mdzz")
- print_two('a', 'b')
- haha()
8. functions and files
- from sys import argv
- script, input_file = argv
- def print_all(f):
- print f.read()
- def rewind(f):
- f.seek(0) #seek function is file's function. It can represent the current position at the offset.
- #default is 0.
- def print_a_line(line_count, f):
- print line_count, f.readline()
- current_file = open(input_file)
- print "First let's print the whole file:\n"
- print_all(current_file)
- print "Now let's rewind, kind of like a tape."
- rewind(current_file)
- print "Let's print three lines:"
- current_line = 1
- print_a_line(current_line, current_file)
- current_line = current_line + 1
- print_a_line(current_line, current_file)
- current_line = current_line + 1
- print_a_line(current_line, current_file)
9. some function
- #split(str, num) function
- #return a list of all the words in the string
- #use str as a sperate
- #num represent the number of lines
- w="123 456 789"
- w.split() # result is ['123', '456', '789'], use the default mode
- w.split(' ', 1) #result is ['123', '456 789']
- #sorted() function
- #It can be used to sort a string
- w='acb'
- w.sorted() #result is ['a', 'b', 'c']
- #pop(i) function
- #remove the item at the given postion in the list and return it
- #if () is empty, we wiil remove and return the last item of the list
- w=[1,2,3]
- w.pop() #w=[1,2]
- w.pop(0) #w=[2]
- #If we are confused about a module,
- #we can use help(module) to learn about it.
- help(module)
10. if statement
- #if-statement
- if ... :
- #...
- elif ... :
- #...
- else :
- #...
11. for and list
- a = [1, 2, 3] #list
- b = [] #a mix list
- for i in range(0, 5):
- print("%d" % i)
- b.append(i)
- #range(a, b) is a, a+1, ... , b-1
- #list.append(obj) add the obj to a list
12. while loop
- a = input()
- while int(a)>10:
- print(a)
- a = input()
13. with-as
- #with-as statement is a control-flow structure.
- #basic structure is
- #with expression [as variable]:
- # with-block
- #It can used to wrap the excution of a block with method defined by a context manager.
- #expression is represented a class. In the class, we must have two functions.
- #One is __enter__(), the others is __exit__().
- #The variable is equal to the return of __enter__(). If we do not have [as variable], it will return nothing.
- #Then we will excute with-block. At the end, we will excute __exit__().
- #__exit__函数的返回值用来指示with-block部分发生的异常是否要re-raise,如果返回False,则会re-raise with-block的异常,如果返回True,则就像什么都没发生。
- import sys
- class test:
- def __enter__(self): #need one argument
- print("enter")
- return self
- def __exit__(self, type, value, trace): #need 4 arguments
- print(type, value, trace)
- return True
- def do(self):
- a=1/0
- return a
- with test() as t:
- t.do()
- #result
- #enter
- #<class 'ZeroDivisionError'> division by zero <traceback object at 0x1029a5188>
- #It's mostly used to handle the exception.
- #a esier simple
- with open(filename, 'w') as f:
- f.read()
- #We do not need to close the file. It can be closed itself.
14. assert-statement
- #assert statement
- #syntax:
- # assert expression , [Arguments]
- #If expression fails, python uses arguments expression.
- def a(b):
- assert b>1, print("wrong!")
- b = input('>')
- a(b)
Python basic (from learn python the hard the way)的更多相关文章
- [IT学习]Learn Python the Hard Way (Using Python 3)笨办法学Python3版本
黑客余弦先生在知道创宇的知道创宇研发技能表v3.1中提到了入门Python的一本好书<Learn Python the Hard Way(英文版链接)>.其中的代码全部是2.7版本. 如果 ...
- 笨办法学 Python (Learn Python The Hard Way)
最近在看:笨办法学 Python (Learn Python The Hard Way) Contents: 译者前言 前言:笨办法更简单 习题 0: 准备工作 习题 1: 第一个程序 习题 2: 注 ...
- 《Learn python the hard way》Exercise 48: Advanced User Input
这几天有点时间,想学点Python基础,今天看到了<learn python the hard way>的 Ex48,这篇文章主要记录一些工具的安装,以及scan 函数的实现. 首先与Ex ...
- 学 Python (Learn Python The Hard Way)
学 Python (Learn Python The Hard Way) Contents: 译者前言 前言:笨办法更简单 习题 0: 准备工作 习题 1: 第一个程序 习题 2: 注释和井号 习题 ...
- Python之路,Day1 - Python基础1
本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...
- Python之路,Day1 - Python基础1(转载Alex)
本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...
- Python之路,Day1 - Python基础1 --转自金角大王
本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语 ...
- python学习笔记(python简史)
一.python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum) 目前python主要应用领域: ·云计算 ·WEB开发 ·科学运算.人工智能 ·系统运维 ·金融:量化交 ...
- Python第一天——初识Python
python是由荷兰人Guido van Rossum 于1989年发明的一种面向对象的的解释型计算机程序设语言,也可以称之为编程语言.例如java.php.c语言等都是编程语言. 那么为什么会有编程 ...
随机推荐
- Eclipse下搭建SWT与Swing图形界面开发环境
一.SWT与Swing介绍 SWT(StandardWidget Toolkit)则是由Eclipse项目组织开发的一套完整的图形界面开发包,虽然当初仅仅是IBM为了编写Eclipse的IDE环境才编 ...
- 如何从github下载项目的源代码,包含git客户端,直接下载,vs下载
有好多小伙伴可能刚刚接触github,还不知道如果和github下载项目,此处写个博客统一的声明.从多种方式下载源代码,加深对git的理解. 首先先解释下git的含义,git是一个源代码的管理工具,通 ...
- windows cmd 命令行 —— 进程与服务
1. 进程查看与操作 tasklist tskill pid 2. 服务查看与操作 net start net stop
- 高德地图 Android编程中 如何设置使 标记 marker 能够被拖拽
由于本人对智能手机真心的不太会用,我本人大概是不到3年前才买的智能手机,用以前的索尼爱立信手机比较方便小巧,平时学习工作打个电话发个短信也就够了,出去吃饭一般都是朋友拿手机去弄什么美团团购啥的,然后我 ...
- crm--01
需求: 将课程名称与班级综合起来 class ClassListConfig(ModelSatrk): # 自定义显示方式 def display_class(self,obj=None,is_hea ...
- vue中axios的深入使用
如上所示一条简单的请求数据,用到了vue中axios,promise,qs等等 这里我将vue中用到的axios进行了封装方便日后使用 先对工具类进行封装utils/axios.js: // 引入模 ...
- js之无缝轮播图
HTML <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> < ...
- 安装伪分布式hbase 0.99.0
查看是否启动成功,输入jps,看到有HMaster和HQuorumPeer,浏览器输入http://localhost:16030/master-status,能打开说明成功 hbase(main): ...
- Cocos2d-X 3.2环境的配置
大三寒假时间特别长,终于准备坐下来好好去学一直想涉足的游戏开发.既然准备学,就要找个出色的.跨平台的引擎来实现自己的计划.最终我选定了Cocos2d-X. 在折腾了很久之后,我终于把Cocos2d-X ...
- ES6中let和const详解
let和var一样也是用来定义变量,不同之处在于let是块级作用域,只在所定义的块级作用域中生效,一个花括号便是一个块级作用域 {var a="我是var定义的";let b=&q ...