《python编程从入门到实践》学习笔记

1.字符串

  • 无需事先声明变量
  • 单引号双引号混合输出时容易产生问题
  • “+”字符串拼接
  • \t制表符(多个空格)
  • str(数值):数值转为字符
  • 将每个单词首字母大写 title(): 不会改变原来的字符串
  • 大写 upper 小写 lower : 不会改变原来的字符串
  • 删除字符串开头结尾空格 rstrip() lstrip() 和strip() : 不会改变原来的字符串

2.列表

  • 创建示例:my_foods = [‘pizza’, ‘falafel’, ‘carrot cake’]
  • 可建立空列表,再添加元素
  • 用方括号标识如,name=[‘a’,‘b’,‘c’],访问同数组
  • print(name)可以打印[‘a’,‘b’,‘c’]
  • append(‘d’):末尾添加元素
  • insert(元素索引,元素内容):插入元素
  • del name[元素索引]:删除元素
  • 弹出末尾元素(并删除):pop()
  • remove(元素值):删除指定元素,注意只能删除第一个元素(从列表开头找)
  • 排序:name.sort()永久性排序,()内参数默认递增:reverse=False,递减为reverse=True
  • 排序:name.sorted()临时排序
  • 翻转列表内排序顺序:reverse()
  • 获取列表长度:len(name)
  • 访问列表最后一个元素:索引为-1。(空列表时发生错误)
  • 遍历列表:
magicians = ['alice', 'david', 'carolina'] 
	#每一次将magicians中的元素赋值给magician
 	for magician in magicians:   
 		print(magician) #打印magician   
  • 生成一序列的数字:range(a,b,c)生成[a,b)的值,步长为c,省略时为1。
  • 对于数字列表:min(name),max(name),sum(name)。
  • squares = [value**2 for value in range(1,11)]
    print(squares) //打印1~10的平方数列表
  • 列表切片:name[a:b] //切出索引为a到b的元素
    可以省略其中的一个,表示从列表开头开始或者结尾结束
    当a或b为负时,表示列表开头a个或结尾b个,如name[-3:]
  • 复制列表:name2=name1[:] //省略起始和终止索引
    使用切片复制可以生成两个不一样的列表,使用名称复制只复制了地址。
  • 元组:不可变的列表(不能修改元组的元素,但是可以给储存元组的变量赋新值)
    示例:dimensions = (200, 50)

3.if语句

  • 常与else、elif、and、or使用
  • 要判断特定的值是否已包含在列表中,可使用关键字in。

4.字典

  • 在Python中,字典是一系列键—值对,每个键都与一个值相关联。(类似结构体)
  • 示例:alien_0 = {‘color’: ‘green’, ‘points’: 5}
  • 字典是一种动态结构,可随时在其中添加键—值对。Python不关心键—值对的添加顺序,而只关心键和值之间的关联关系。
  • 删除键:del alien_0[‘points’]
  • 遍历字典:for key, value in name.items():
    print("\nKey: " + key)
    print("Value: " + value)
  • 在不需要使用字典中的值时,用keys()方法: favorite_languages.keys():
  • 可使用函数sorted() 来获得按特定顺序排列的键列表的副本。
  • 字典包含的值,可使用方法values()。
  • 为剔除重复项,可使用集合(set)。集合类似于列表,但每个元素都必须是独一无二的。
  • 可以在列表中嵌套字典、在字典中嵌套列表甚至在字典中嵌套字典。

5.用户输入

  • 示例:message = input("Tell me something, and I will repeat it back to you: ")
  • 数字输入:用int()转换
  • 是Python 2.7,请使用raw_input() 而不是input() 来获取输入。

6.函数

  • 定义要用关键字:def,以冒号结尾。
  • 示例:def greet_user():
  • 不用定义返回值和形参类型。
  • 在函数中对传入列表所做的任何修改都是永久性的。可以使用切片function_name(list_name[:])创建副本。
  • 传递任意数量的实参:def make_pizza(toppings):
    形参名
    toppings 中的星号让Python创建一个名为toppings 的空元组,并将收到的所 有值都封装到这个元组中。
  • 使用任意数量的关键字实参:
    def build_profile(first, last,**user_info):
    形参**user_info 中的两个星号让Python创建一个名为user_info 的空字典,并将收到 的所有名称—值对都封装到这个字典中。

7.类

  • 示例:
class Dog():
	def __init__(self, name, age): 
	"""初始化属性name和age"""
	self.name = name 
	self.age = age
  • 类名首字母大写。
  • 创建类的示例时,自动传入实参self。
  • 方法__init__() 是一个特殊的方法,每当你根据Dog 类创建新实例时,Python都会自动运行它。形参self必不可少,会自动传递。
  • 以self 为前缀的变量都可供类中的所有方法使用,事先也不用声明,我们还可以通过类的任何实例来访问这些变量。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章