【Python3笔记】- 基本知识点整理

【额外收获】

  • 字符编码问题简明解释(utf-8)

【廖雪峰python3教程】

  • 函数的参数问题【位置(必选)参数、默认参数、可变参数、关键字参数、命名关键字参数】

【摘选自菜鸟教程】:http://www.runoob.com/python3/python3-data-type.html

| 赋值与运算

1、Python可以同时为多个变量赋值,如a, b = 1, 2。
2、一个变量可以通过赋值指向不同类型的对象。
3、数值的除法(/)总是返回一个浮点数,要获取整数使用//操作符。
4、在混合计算时,Python会把整型转换成为浮点数。

*逻辑运算
【Python3笔记】- 基本知识点整理_第1张图片

*成员运算
这里写图片描述

*身份运算
这里写图片描述

| 字符串string

【菜鸟教程】http://www.runoob.com/python3/python3-string.html
string单双引号都可定义,没区别

bool"all_string_is_True_except_empty_is_False"#True

str = "Pluto is a planet!"
str.upper() 		# 'PLUTO IS A PLANET!'
str.lower()			# 'pluto is a planet!'
str.index('plan')	# 11
str.startswith('Pluto')   # True
str.endswith('dwarf planet')  	# False
words = str.split()				# ['Pluto', 'is', 'a', 'planet!']
"dog..,,".strip('.,')			# "dog"  只能去尾
"dog..,,".rstrip(',。')			# 同上;去左边用lstrip()

datestr = '1956-01-31'
year, month, day = datestr.split('-')    # use '-' to split
'/'.join([month, day, year])	# '01/31/1956' sew them into one with '/'

# str.format() 
planet = 'Pluto'
position = 9
"{}, you'll always be the {}th planet to me.".format(planet, position)
# "Pluto, you'll always be the 9th planet to me."
s = "Pluto's a {0} or a {1}? {0}! {1}!".format('planet', 'dwarf planet')
# Pluto's a planet or a dwarf planet? planet! dwarf planet!

【Python3笔记】- 基本知识点整理_第2张图片
【Python3笔记】- 基本知识点整理_第3张图片

注:列表可以修改,而字符串和元组不能

1、反斜杠可以用来转义,使用r可以让反斜杠不发生转义。
2、字符串可以用+运算符连接在一起,用*运算符重复。
3、Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。
4、Python中的字符串不能改变。
5、访问序号区间 左闭右开【a,b)

>>> word = 'Python'
>>> print(word[0], word[5])
P n
>>> print(word[-1], word[-6])//-1表示最后一个位置
n P
>>>word[0] = 'm'//此句会导致错误

| 列表List

【菜鸟教程】http://www.runoob.com/python3/python3-list.html

list = [ 'abcd', 786 , 2.23, 'runoob', 70.2 ]
print (list[1:3])       # 从第二个开始输出到第三个元素【区间:左闭右开】
  • 与Python字符串不一样的是,列表中的元素是可以改变的
  • for loop 同时获得indexvalue,用enumerate()
for i, val in enumerate(my_list):
	print("The {}th element of list is {}".format(i, val))

| 元组tuple

【菜鸟教程】http://www.runoob.com/python3/python3-tuple.html

tuple = ( 'abcd', 786 , 2.23, 'runoob', 70.2  )
print (tinytuple * 2)     # 输出两次元组

¥与列表类似,只是其元素不能修改。但它可以包含可变的对象,比如list列表
¥元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组

| 集合set

student = ({
     'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'})
print(student)   # 输出集合,重复的元素被自动去掉

a = set('abracadabra')
b = set('alacazam')

print(a)
print(a - b)     # a和b的差集
print(a | b)     # a和b的并集
print(a & b)     # a和b的交集
print(a ^ b)     # a和b中不同时存在的元素

集合(set)是一个无序不重复元素的序列。
基本功能:进行成员关系测试和删除重复元素。
可以使用 **大括号({})**或者 set()函数创建集合

**注意:**创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。

| 字典Dictionary

【菜鸟教程】http://www.runoob.com/python3/python3-dictionary.html

列表是有序的对象结合,字典是无序的对象集合。
区别:字典当中的元素是通过键来存取的,而不是通过偏移存取;

tinydict = {
     'name': 'runoob','code':1, 'site': 'www.runoob.com'}

print (tinydict.keys())   # 输出所有键
#结果如下:
dict_keys(['name', 'site', 'code'])

注意:值可以取任何数据类型,但键 必须是不可变的,如字符串,数字或元组可以,而列表就不行

dict = {
     ['Name']: 'Runoob', 'Age': 7} #不能用列表作为键值

print ("dict['Name']: ", dict['Name']) #出错

| - 补充:

  • 字典可以像列表一样,在括号内进行for,in等操作
  • for loop是循环键值key
for k in my_dict:   # keys
	print("{} = {}".format(k, my_dict[k]))
for k, value in my_dict.item():    # key and value
	print("{} = {}".format(k, value))
  • dict.keys() 和dict.values() 返回所有的键或值(list)

函数

  • round()
    默认为0,整数表示保留几位小数,负数表示整数取整
round(202.3345, -2)  #200
round(202.3345, 2)   #202.33
  • 条件语句的简化形式:
outcome = 'failed' if 100 < 50 else 'passed'  # outcome=passed

你可能感兴趣的:(学习笔记)