Python 语法小例子
来源:互联网 发布:centos官网价格 编辑:程序博客网 时间:2024/06/07 06:54
1、print('hello world')
2、python并没有long型,int型可以是任意大小的整数
3、string类型,单引号和双引号没区别。三引号表示多行:
'''This is a multi-line string. This is the first line.This is the second line."What's your name?," I asked.He said "Bond, James Bond."'''4、python并没有单独的char类型。
5、关于fromat()函数
一般这么写:
age = 20name = 'Swaroop'print('{0} was {1} years old when he wrote this book'.format(name, age))print('Why is {0} playing with that python?'.format(name))或者:
print('{} was {} years old when he wrote this book'.format(name, age))print('Why is {} playing with that python?'.format(name))一般不这么写:
name + ' is ' + str(age) + ' years old'其他用法:
# decimal (.) precision of 3 for float '0.33333'print('{0:.5f}'.format(1.0/3))# fill with underscores (_) with the text centered# (^) to 11 width '___hello___'print('{0:_^11}'.format('hello'))6、print()是自动换行的,若不自动换行,需要显示的如下使用print()函数:
print('a', end='')print('b', end='')注意!python 3版本以下不支持该print end用法,需要直接在首行添加:
from __future__ import print_function7、识别转义序列用\识别
'What\'s your name?'
8、关于physical line和logical line. physical line是编辑器的一行, logical line是python编译器所识别的一行。
如果在一行里写多个语句,用;隔开,但是一般在python代码中最好不要出现分号,所以我们不建议这么写代码:
i = 5;print(i);或:
i = 5; print(i);i = 5; print(i)
最好,一个语句一行:
i = 5print(i)
9、python中,从不用{}来对代码进行分组,只用缩进!python中标准的缩进是4个空格键
10、if语句:
number = 23guess = int(input('Enter an integer : '))if guess == number: # New block starts here print('Congratulations, you guessed it.') print('(but you do not win any prizes!)') # New block ends hereelif guess < number: # Another block print('No, it is a little higher than that') # You can do whatever you want in a block ...else: print('No, it is a little lower than that') # you must have guessed > number to reach hereprint('Done')# This last statement is always executed,# after the if statement is executed.11、while语句(不同于其他编程语言,python的while语句有else子句)
number = 23running = Truewhile running: guess = int(input('Enter an integer : ')) if guess == number: print('Congratulations, you guessed it.') # this causes the while loop to stop running = False elif guess < number: print('No, it is a little higher than that.') else: print('No, it is a little lower than that.')else: print('The while loop is over.') # Do anything else you want to do hereprint('Done')12、for语句(类似于C++的 for(int i = 0; i < 5; i++) )
for i in range(1, 5): print(i)else: print('The for loop is over')13、break语句和continue语句
break语句:是跳出整个for或者while循环
continue语句:是告诉程序跳出当前循环,直接执行下一循环
while True: s = input('Enter something : ') if s == 'quit': break if len(s) < 3: print('Too small') continue print('Input is of sufficient length') # Do other kinds of processing here...14、局部变量
x = 50def func(x): print('x is', x) x = 2 print('Changed local x to', x)func(x)print('x is still', x) #x的值依然是5015、全局变量
x = 50def func(): global x #是全局变量 print('x is', x) x = 2 print('Changed global x to', x)func()print('Value of x is', x) #x的值变为216、不定参数的函数:*param是指相应的参数为tuple; **param是指相应的参数为dictionary
def total(a=5, *numbers, **phonebook): print('a', a) #iterate through all the items in tuple for single_item in numbers: print('single_item', single_item) #iterate through all the items in dictionary for first_part, second_part in phonebook.items(): print(first_part,second_part)print(total(10,1,2,3,Jack=1123,John=2231,Inge=1560))输出:
a 10single_item 1single_item 2single_item 3Inge 1560John 2231Jack 1123None17、定位当前工作路径:
import osprint(os.getcwd())18、关于import modules
一般不建议from ... import(使用的时候可以省去moduel名,所以可能会造成冲突),使用import ...更妥(不可省)
每个python module都有一个__name__属性,可以通过该属性判断,该moduel是自己在运行还是正在被import
if __name__ == '__main__': print('This program is being run by itself')else: print('I am being imported from another module')19、创建自己的moduel
可以这么说,每个python程序都可以看成是一个module。e.g.
mymodule.py (该.py文件 为module)
def say_hi(): print('Hi, this is mymodule speaking.')__version__ = '0.1'通过import使用:
import mymodulemymodule.say_hi()print('Version', mymodule.__version__)通过from...import..使用:
from mymodule import say_hi, __version__say_hi()print('Version', __version__)20、dir(module)是该module的所有属性查找函数
21、python数据结构有:List, Tuple, Dictionary, Set, Sequence, Reference. 具体用法将单独做笔记
22、类class,首先看一个简单的class的例子,了解python中的类怎么使用
class Person: def __init__(self, name): self.name = name def say_hi(self): print('Hello, my name is', self.name)p = Person('Swaroop')p.say_hi()可以和C++这么类比: self~this , __init__~构造函数。但是并不显示的调用__inti__函数,而是通过类名来实例化,如:p = Person('Swaron')
下面详细看重点:class variable, object variable, classmethod. 还是先看例子:
class Robot: """Represents a robot, with a name.""" # A class variable, counting the number of robots population = 0 #类变量,通过Robot.population来访问,并不是通过self.population来访问 def __init__(self, name): """Initializes the data.""" self.name = name # name是object 变量,通过self.name访问 print("(Initializing {})".format(self.name)) # When this person is created, the robot # adds to the population Robot.population += 1 def die(self): """I am dying.""" print("{} is being destroyed!".format(self.name)) Robot.population -= 1 if Robot.population == 0: print("{} was the last one.".format(self.name)) else: print("There are still {:d} robots working.".format( Robot.population)) def say_hi(self): """Greeting by the robot. Yeah, they can do that.""" print("Greetings, my masters call me {}.".format(self.name)) @classmethod def how_many(cls): #类似于C++ 的静态函数,类的所有实例对象共享 """Prints the current population.""" print("We have {:d} robots.".format(cls.population))需要注意与C++类不同的是,python类(包括类成员和类方法)都是public的,并且所有的类方法都是virtual (继承的时候可以重载……)
既然提到了类的继承,看下面一个继承的例子:
class SchoolMember: '''Represents any school member.''' def __init__(self, name, age): self.name = name self.age = age print('(Initialized SchoolMember: {})'.format(self.name)) def tell(self): '''Tell my details.''' print('Name:"{}" Age:"{}"'.format(self.name, self.age), end=" ")class Teacher(SchoolMember): '''Represents a teacher.''' def __init__(self, name, age, salary): SchoolMember.__init__(self, name, age) self.salary = salary print('(Initialized Teacher: {})'.format(self.name)) def tell(self): SchoolMember.tell(self) print('Salary: "{:d}"'.format(self.salary))class Student(SchoolMember): '''Represents a student.''' def __init__(self, name, age, marks): SchoolMember.__init__(self, name, age) self.marks = marks print('(Initialized Student: {})'.format(self.name)) def tell(self): SchoolMember.tell(self) print('Marks: "{:d}"'.format(self.marks))t = Teacher('Mrs. Shrividya', 40, 30000)s = Student('Swaroop', 25, 75)# prints a blank lineprint()members = [t, s]for member in members: # Works for both Teachers and Students member.tell()注意和C++类的继承的区别:python类的继承并不默认继承基类的所有,需要显示的调用基类的__init__等之类的函数。
这里的tell()函数类似于接口,但又不全是接口,可以在派生类中复写。然后统一访问
23、关于输入输出
输入:
something = input("Enter text: ")输出:直接就是print函数
关于文件的读写:(读写的mode))
# Open for 'w'ritingf = open('poem.txt', 'w')# Write text to filef.write(poem)# Close the filef.close()还有一种pickle方法来实现对象的持续存储
import pickle# The name of the file where we will store the objectshoplistfile = 'shoplist.data'# The list of things to buyshoplist = ['apple', 'mango', 'carrot']# Write to the filef = open(shoplistfile, 'wb')# Dump the object to a filepickle.dump(shoplist, f)f.close()# Destroy the shoplist variabledel shoplist# Read back from the storagef = open(shoplistfile, 'rb')# Load the object from the filestoredlist = pickle.load(f)print(storedlist)先open待存文件,然后调用pickle模块中的dump方法,即完成一次存储。
以utf-8格式读写:
# encoding=utf-8import iof = io.open("abc.txt", "wt", encoding="utf-8")f.write(u"Imagine non-English language here")f.close()text = io.open("abc.txt", encoding="utf-8").read()print(text)其中,python是通过字母'u'来读取non-English语言。
24、python关于异常的处理
首先,try...except...else...:
try: text = input('Enter something --> ')except EOFError: print('Why did you do an EOF on me?')except KeyboardInterrupt: print('You cancelled the operation.')else: #执行到这,代表没遇到异常 print('You entered {}'.format(text))还有,try...finally
import sysimport timef = Nonetry: f = open("poem.txt") # Our usual file-reading idiom while True: line = f.readline() if len(line) == 0: break print(line, end='') sys.stdout.flush() print("Press ctrl+c now") # To make sure it runs for a while time.sleep(2)except IOError: print("Could not find file poem.txt")except KeyboardInterrupt: print("!! You cancelled the reading from the file.")finally: #肯定被执行 if f: f.close() print("(Cleaning up: Closed the file)")最后,with语句:
with open("poem.txt") as f: for line in f: print(line, end='')但是,虽然语法简单,但是并没有捕捉到error。
- Python 语法小例子
- freemarker语法带小例子
- llvm IR 语法小例子
- python小语法
- python实用小语法
- python语法小知识
- python应用小例子
- python 小例子
- Python小例子
- python zipfile小例子
- Python多线程小例子
- python socket 小例子
- Python基础语法--一些例子
- Python简介的小语法
- python中一些小语法
- python的一个小例子
- python网络编程小例子
- python网络编程小例子
- ACboy needs your help again! HDU
- TCITEM结构体
- angularjs 学习 scope
- Android M动态申请获取权限android.permission.READ_PHONE_STATE
- 水田问题
- Python 语法小例子
- springMVC中的注解汇总
- Python运行pip 命令的时候 总提醒要升级pip,的报错
- Criteria外键查询
- js 函数
- 5-25 念数字 (15分)
- SDN控制器
- OfficeVBA文档
- The folder is already a source folder