学Python划重点一(Python基础、数字类型、字符串、语句)

前言:
学过c、java后来学python相对快很多,不过它们之间还是有很多的不同之处,这里只总结一些它们的不同之处,主要用于自己的复习。

一、Python基础

1. 标识符和关键字

标识符就是变量、常量、函数、属性、类、模块和包等由程序员指定的名字。

2. 变量和常量

在Python 中,不需要事先声明变量名及其类型,直接赋值即可创建各种类型的对象变量。Python 采用的是基于值的内存管理方式 ,如果为不同变量赋相同值,这个值在内存中只有一份,多个变量指向同一块内存地址。

3. 运算符

  1. “/ ”和“// ”分别表示除法和整除运算。
  2. % 运算符除去可以用于字符串格式化之外,还可以对整数和浮点数计算余数。但是由于浮点数的精确度影响,计算结果可能略有误差。
  3. 1 < 3 < 5 # 等价于1 < 3 and 3 < 5。
  4. 位运算是以二进位(bit) 为单位进行运算的,操作数和结果都是整型数据。位运算符有:& 、| 、^ 、~ 、>> 和<<。
  5. Python 不支持++ 和- -。

4. 模块导入与使用

模块的导入主要是函数、类的导入。

x = 5/2  # x结果为 2.5 普通除法
x = 5//2  #x结果为 2    整除
x = 6.0 % 2.0 # 0.0
x = 6.3 % 2.1  # 2.0999999999999996
from math import sin as f # 别名

Python 中没有数组结构
在这里插入图片描述

二、数字类型

Python 数字类型有四种:整数类型、浮点类型、复数类型和 布尔类型

  1. Python 整数类型为int ,整数类型可以表示很大的整数,这只受计算机硬件的限制。
  2. Python 3.6.x 开始支持在数字中间位置使用 单个下划线 作为分隔来提高数字的可读性,类似于数学上使用逗号作为千位分隔符。1_000_000 = 1000000
  3. Python 是支持复数的,这使得Python 能够很好地用来进行科学计算。a = 3 + 4j
  4. 任何类型数据都可以通过 bool() 函数转换为布尔值,那些被认为“没有的”、“空的”值会转换为False ,反之转换为True。
  5. 除复数外 ,整数类型、浮点类型和布尔类型都有自己的转换函数,分别是int() 、float() 和bool().

三、字符串

1. 字符串的三种表示

普通字符串: 采用单引号或双引号包裹起来的字符串。
原始字符串: 在普通字符串前加r ,字符串中的特殊字符不需要转义,按照字符串的本来“面目”呈现。
长字符串: 字符串中包含了换行缩进等排版字符,可以使用三重单引号或三重双引号包裹起来,这就是长字符串

2. 字符串格式化

在字符串格式化时可以使用字符串的format()方法以及占位符。

s = '{0} 的年龄是{1} 岁。'.format(name, age)
s = '{n} 的年龄是{a} 岁。'.format(n=name, a=age)

{1:d} 表示索引为1 的占位符格式参数是十进制整数。
在这里插入图片描述

3. 字符串方法

函数 描述
str.capitalize 返回字符串的副本,字符串首字母大写,其他字符小写
str.casefold 返回字符串副本,字母均小写,对其他非英文字字母也均适用,按照
str.lower() 返回字符串副本,字母(特指英文字母)均小写
str.upper() 将字符串字母大写,并返回
str.center(width, filter='') 返回以原字符串为中心向两边填充的新字符串,填充物为filter,默认为ASCII空格。填充长度为width,若width小于原字符串长度,则返回原字符串副本
str.ljust(width, fillchar='') 返回一个将原字符串左端利用fillchar填充的,长度为width的新字符串。其他类似于str.center()
str.zfill(width) 在字符串最左端填充ASCII的0,若最左端为’-‘或’+'时,选次右端为首字母,width为填充后字符串宽度
str.count(sub,start=None,end=None) 返回字符串中字符sub的个数,截取字符串自start到end之间的字符串进行统计,两参数默认为None(即默认为原字符串)
str.translate(table) table为类似于字典的键值对(映射关系),字符串中的字符将按照映射进行转换,类似于密码译对
str.encode(encoding=“utf-8”, errors=“strict”) 作用于编码为encoding的字符串,返回一个bytes类型。相应的b’ '.decode(),逆变换。errors对转换时出现的错误进行处理的方法,常用的由strict(触发异常)、ignore(忽略错误)
str.endwith(suffix, start=None, error=None) 截取字符串自start到end之间的字符串,判断字符串是否以suffix为结尾,返回True(是)、False(否)
str.startswith(suffix, start=None, error=None) 类似于str.endwith
str.expandtabs(tabsize=8) 返回字符串的副本,将字符串中的tab(默认大小为tabsize=8)替换为一个或多个空格。
str.find(sub, start=None,end=None) 截取字符串自start到end之间的字符串,查找子字符串中是否有sub,返回TrueFalse
str.rfind(sub,start=None,end=None) 若sub为原字符串的子字符串,则返回其最高索引(最右侧一组),否则返回-1
str.format(*args, kwargs) 格式化字符串
str.format_map(mapping) 格式化字符串,mapping为字典,具有对应关系。
str.swapcase() 将原字符串的字母大小写反转,并返回
str.index(sub, start,end) 截取字符串自start到end之间的字符串,查找子字符串中是否有sub,存在返回sub首字母的在原字符串中的位置,否则触发异常
str.rindex(sub,start=None,end=None) 类似于str.rfind(sub,start=None,end=None),未找到是触发异常
str.replace(old, new, count=1) 由new替换原字符串中old子字符串,并返回一个新字符串。若找到多组,则由count决定需要替换的组数,由左向右
str.isalnum() 判断字符串中字符是否均为字母或数字,返回True,False。字符串为空时返回False。
str.isalpha() 类似于str.isalnum,判断是否均为字母字符
str.isdecimal() 类似于str.isalnum,判断是否均为十进制
str.isdigit 类似于str.isalnum,判断是否均为数字
str.isspace 类似于str.isalnum,判断是否均空格
str.lower()、str.upper() 判断字符串是否均为小写或大写
str.isprintable 判断字符串是否可打印
str.title() 将原字符串转换成title形式,并返回
str.istitle 判断字符串是否为标题,参见python标题格式
str.join(iterable) 常用形式为’sub’.join(iterable),将可迭代对象,以sub为分隔符,组成一个新的字符串
str.lstrip(chars='') 返回一个将原字符串去掉左端的chars(默认为空格)的新字符串。从左向右,原字符串最左端的字符只要包含在chars中均删除,直至原字符串最左端字符不包含在chars中。
str.rstrip() 类似于str.lstrip
str.strip() 类似于str.lstrip,两端
str.partition(‘spe’) 分割字符串,在遍历字符串首次遇见spe时分割。返回一个列表,包括原字符串在sep之前部分,spe,和原字符串在spe之后的部分。若spe在最左端或最右端,均有其右(左)部分由空格替代。未找到,返回包含原字符串和两个空格的列表。
str.rpartition(sub) 类似于str.partition(‘spe’),spe为最右一组。
str.split(spe=None,maxsplit=-1) 以spe为分隔符分割字符串,返回一个列表。若指定maxsplit,则之多分裂maxsplit+1组。
str.rsplit(spe=None,maxsplit=-1) 类似于str.split(spe=None,maxsplit=-1),只是在maxsplit不为-1时,由右计算

四、语句

1. if 语句

if 语句有if 结构、if-else 结构和elif 结构三种。
条件表达式:表达式1 if 条件 else 表达式2
if 语句可使用in 、not in、or、and关键字

if x == 0 or x == 1:
	print("YES")
elif x == 2 and y == 2:
	print("NO")
else:
	print("YN")

2. for 语句

while 循环语句和for 循环语句都可以带else 子句,如果循环因为条件表达式不成立而 自然结束 ,则执行else 结构中的语句;如果循环是因为执行了break 语句而导致循环提前结束,则不执行else 中的语句。

for  取值 in  序列或迭代对象:
	循环体
[else:
	else 子句代码块]

3. while 语句

while  条件表达式:
	循环体
[else:
	else 子句代码块]

4. 输入、输出语句

x = input("请输入x的值:")
print(1,2,3,sep=":")
print(1,2,3,end="")

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章