python - 输入输出 之 字符串前缀u、r、b、f含义_开码河粉-优快云博客
Python 基础语法
Python 标识符
在 Python 中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。
Python 中的标识符是区分大小写的
以下划线开头的标识符是有特殊意义的。以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入。
以双下划线开头的 foo 代表类的私有成员,以双下划线开头和结尾的 foo__ 代表 Python 里特殊方法专用的标识,如 init() 代表类的构造函数。
行和缩进
学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。
缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。
建议你在每个缩进层次使用 单个制表符 或 两个空格 或 四个空格 , 切记不能混用
多行语句
可以使用斜杠( \)将一行的语句分为多行显示
total = item_one + \ item_two + \ item_three
语句中包含 [], {} 或 () 括号就不需要使用多行连接符
days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']
Python 引号
Python 可以使用引号( ' )、双引号( " )、三引号( ''' 或 """ ) 来表示字符串,引号的开始与结束必须是相同类型的
word = 'word' sentence = "这是一个句子。" paragraph = """这是一个段落。 包含了多个语句"""
Python注释
python中单行注释采用 # 开头。
python 中多行注释使用三个单引号(''')或三个双引号(""")。
同一行显示多条语句
Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,
print 输出
print 默认输出是换行的,如果要实现不换行需要在变量末尾加上逗号 ,。
#!/usr/bin/python # -*- coding: UTF-8 -*- x="a" y="b" # 换行输出 print x print y print '---------' # 不换行输出 print x, print y, # 不换行输出 print x,y
Python 变量类型
多个变量赋值
Python允许你同时为多个变量赋值
a = b = c = 1 a, b, c = 1, 2, "john"
标准数据类型
Python有五个标准的数据类型:
-
Numbers(数字)
-
String(字符串)
-
List(列表)
-
Tuple(元组)
-
Dictionary(字典)
Python 数字
Python支持四种不同的数字类型:
-
int(有符号整型)
-
long(长整型[也可以代表八进制和十六进制])
-
float(浮点型)
-
complex(复数)
Python字符串
字符串或串(String)是由数字、字母、下划线组成的一串字符。
python的字串列表有2种取值顺序:
-
从左到右索引默认0开始的,最大范围是字符串长度少1
-
从右到左索引默认-1开始的,最大范围是字符串开头
星号(*)是重复操作
print str * 2 # 输出字符串两次 print str[2:5:2] # 输出字符串中第三个至第六个之间的字符串 ,步长是2
Python列表
列表用 [ ] 标识, 列表中值的切割也可以用到变量 [头下标:尾下标]
它支持字符,数字,字符串甚至可以包含列表(即嵌套)
list = [ 'runoob', 786 , 2.23, 'john', 70.2 ] #!/usr/bin/python # -*- coding: UTF-8 -*- list=['da',23,'dd','55','da'] #获取某元素的索引 #print list.index('55') #排序 list.reverse() print list #计算list长度 #print len(list) # 删除某个元素 #print list.remove('da') #print list #按索引移出某元素 #print list.pop() #print list.pop(-2) #print list #添加某元素 #print list.append('ha') #print list # 计算某元素出现的次数 #print list.count('da')
Python 元组
元组是另一个数据类型,类似于 List(列表)
元组用 () 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。
tuple = ( 'runoob', 786 , 2.23, 'john', 70.2 )
Python 字典
字典用"{ }"标识。字典由索引(key)和它对应的值value组成。
列表是有序的对象集合,字典是无序的对象集合。
两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
tinydict = {'name': 'runoob','code':6734, 'dept': 'sales'}
Python数据类型转换
Python成员运算符
运算符 | 描述 | 实例 |
---|---|---|
in | 如果在指定的序列中找到值返回 True,否则返回 False。 | x 在 y 序列中 , 如果 x 在 y 序列中返回 True。 |
not in | 如果在指定的序列中没有找到值返回 True,否则返回 False。 | x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。 |
循环语句
for-else
friuts=['banana','apple','gaga'] for index in range(len(friuts)): print "fruits: ", friuts[index]
for num in range(10,20): for j in range(2,num): if num%j ==0: i=num/j print '%d 等于 %d * %d'%(num, j,i) break else: print '%d 是一个质素'%(num)
while
面向对象
单下划线、双下划线、头尾双下划线说明:
-
foo: 定义的是特殊方法,一般是系统定义名字 ,类似 init() 之类的。
-
_foo: 以单下划线开头的表示的是 protected 类型的变量,即保护类型只能允许其本身与子类进行访问,不能用于 from module import *
-
__foo: 双下划线的表示的是私有类型(private)的变量, 只能是允许这个类本身进行访问了。
Python不允许实例化的类访问私有数据,但你可以使用 object.className__attrName( **对象名.类名__私有属性名** )访问属性,
类的继承
class 派生类名(基类名)
Python内置类属性
-
dict : 类的属性(包含一个字典,由类的数据属性组成)
-
doc :类的文档字符串
-
name: 类名
-
module: 类定义所在的模块(类的全名是'main.className',如果类位于一个导入模块mymod中,那么className.module 等于 mymod)
-
bases : 类的所有父类构成元素(包含了一个由所有父类组成的元组)
#面向对象 class Employee: '所有员工的基数个数' employeeCount=0 def __init__(self,name, salary): self.name=name self.salary=salary self.employeeCount += 1 def displayEmployee(self): print ('Name : ', self.name, ', Salary : ',self.salary) def displayCount(self): print ('Total Employee %d' % Employee.employeeCount) employee1 =Employee('gaga',10) employee2 =Employee('haha',10) employee1.displayEmployee() employee2.displayEmployee() print('Total Employee %d' %Employee.employeeCount)