【Python】基础语法 - 《Python编程:从入门到实践》

python特点 :

优点:(1)面向对象(OOP:多态、重载、继承)(2)代码少 (高效)  (3)可移植性

缺点:(1)执行速度不够快 


目  录:

1、简单语法 

2、列表 

(1)增加、删除列表元素

(2)操作列表(切片、元组)

(3)排序 

 3、基本语句

(1)循环语句

(2)条件语句 

4、字典—键值对

(1) 字典的基本操作

(2)嵌套

5、用户输入和循环

6、函数

(1)形参与实参(给形参指定默认值时,等号两边不要有空格)

(2)返回值

(3)传递列表

(4)传递任意参数

(5)文件模块导入

a. 导入全部函数  ​   ​b. 导入特定函数  ​c. 函数重命名 as  ​ 

 7、类

(1)__init__()是一个特殊的方法:根据类创建新实例时,Python自动运行

(2)继承:子类继承父类—super()是一个特殊函数,帮助Python将父类和子类关联起来

(3)将实例用作属性

(4)标准库模块:http://pymotw.com/

(5)编码风格:

 8、文件和异常

(1)文件读取(默认读取)

(2)文件写入

(3)异常处理(pass:异常时什么都不做)

(4)json存储数据

(5)重构:将代码划分为一系列完成具体工作的函数

9、测试

(1)测试函数:所有以test_打头的方法都将自动运行

(2)测试类:先运行setUp(),再运行各个以test_打头的方法。


1、简单语法 

sentence = "You be the wind in his back, not the spit in his face."
print(sentence.title())  # 首字母大写
print(sentence.upper())  # 所有字母大写
print(sentence.lower())  # 所有字母小写

a = ("    python    ")
print(a.strip())   # 删除空白
print(a.lstrip())  # 删除左边空白
print(a.rstrip())  # 删除右边空白

print("Languages:\n\tPython\n\tC\n\tJavaScript")   # 制表符和换行

print(3 ** 3)     # 次方运算
print(0.2 + 0.1)  # 多位数结果0.30000000000000004

2、列表 

(1)增加、删除列表元素

alphabet = ['a', 'b', 'c', 'd']
print(alphabet[-1])        # 返回列表最后一个元素

alphabet.append('e')       # 列表末尾添加元素
alphabet.insert(1, 'o')    # 列表位置1 添加元素

# 根据位置删除元素
del alphabet[0]            # 列表删除元素(删除后无法访问)
letter1 = alphabet.pop(3)  # 列表删除元素值,若括号内为空,则默认删除末尾值(删除后可访问到被删除元素的值)

# 根据值删除元素
alphabet.remove('o')       # 删除的元素值(只删除第一个指定值,列表中可能有重复的值,可用循环解决)

(2)操作列表(切片、元组)

# 切片:使用列表的部分元素
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[0:3])       # 取0 - (3-1) 位置上的元素
print(players[-3:])       # 取最后三个元素

for player in players[:3]:    # 遍历3位置前(不包括3)的元素
    print(player.title())

another_players = players[:]   # 复制列表
print(another_players)

# 元组:不可修改元素的列表
dimensions = (200, 50)     # 不可单个修改元素: dimensions[0] = 250     ×
print(dimensions)          # 可以通过变量修改: dimensions = (400, 100) √

(3)排序 

# 永久排序
sentence.sort()                # 按首字母排列(正序)
sentence.sort(reverse=True)    # 按首字母排列(逆序)

# 临时排序
print(sorted(sentence))                # 正序排序
print(sorted(sentence, reverse=True))  # 逆序排序

sentence.reverse()    # 逆序输出(不排序)
len(sentence)         # 列表长度

 3、基本语句

(1)循环语句

a. 函数range()随机创造数字列表 

b. 使用break(退出循环)和continue(结束当前循环开始下一循环)时后面不用加符号

c. for循环不修改列表(难以跟踪修改元素);           while循环可以修改列表

magicians = ['alice', 'david', 'carolina'] 
for magician in magicians:        # magician临时变量
    print(magician)

for value in range(1, 10, 2):     # value是数字,数字值是在1-9每隔两位选,1 3 5 7 9
    print(value)
numbers = list(range(1, 6))      # numbers是列表

numbers = [8, 3, 7, 2, 5, 1, 9, 4, 6]
print(min(numbers))   # 最小值
print(max(numbers))   # 最大值
print(sum(numbers))   # 求和

# 列表解析(注意for后面没有“:”)
squares = [value**2 for value in range(1,11)]    # 结果:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
print(squares)

# while循环
# (1)列表之间移动元素
unconfirmed_users = ['alice', 'brian', 'candace']    # 未验证用户逐个验证,验证后逐个添加到已验证用户列表
confirmed_users = []
while unconfirmed_users:
    current_user = unconfirmed_users.pop()      # 默认删除并取末尾元素
    print("Verifying user: " + current_user.title())
    confirmed_users.append(current_user)        # 列表添加元素
print(unconfirmed_users)
print(confirmed_users)

# (2)删除特定值
pets = ['dog', 'cat', 'dog', 'goldfish', 'cat', 'rabbit', 'cat']
while 'cat' in pets:
    pets.remove('cat')

(2)条件语句 

# 条件语句(if    elif    else后面都有“:”)
age = 12
if age < 4:
    price = 0
elif age < 18:
    price = 5
else:                # else可以没有
    price = 10
print("Your admission cost is $" + str(price) + ".")

age_0 >= 21 and age_1 >= 21     # 全部满足条件
age_0 >= 21 or age_1 >= 21      # 只需要满足其中一个条件

requested_toppings = ['mushrooms', 'onions', 'pineapple']
print('mushrooms' in requested_toppings)    # 判断列表元素的存在(不包含:not in)

4、字典—键值对

(1) 字典的基本操作

alien_0 = {'color': 'green', 'points': 5}
print(alien_0['color'])
print(alien_0)

alien_0['x_position'] = 0       # 1、字典添加信息
alien_0['y_position'] = 25

alien_0['color'] = 'yellow'     # 2、字典修改信息

del alien_0['points']           # 3、字典删除信息(永远消失)      

user_0 = {
    'username': 'efermi',       # 类似对象组成的字典
    'first': 'enrico',
     'last': 'fermi',
    'nickname':'efermi'
 }

for key, value in user_0.items():      # 遍历字典键值对(键—值对的返回顺序也与存储顺序不同)
    print("Key: " + key + "   ""Value: " + value + "\n")

for key in user_0.keys():              # 遍历字典所有键
    print(key)

for user in sorted(user_0.keys()):     # 按顺序遍历字典中的所有键sorted临时排序
    print(user.title())

for value in user_0.values():          # 遍历字典所有值(未考虑重复值)
    print(value)

for value in set(user_0.values()):     # 遍历字典所有值,用集合(set)剔除重复值
    print(value)

(2)嵌套

# 1、列表嵌套字典
aliens = []             # 创建一个用于存储外星人的空列表
for alien_number in range(30):       # 创建30个绿色的外星人
    new_alien = {'color': 'green', 'points': 5, 'speed': 'slow'}
    aliens.append(new_alien)
# print(aliens[0])        # 测试创建是否成功
print("Total number of aliens: " + str(len(aliens)))    # 显示创建了多少个外星人


# 2、字典嵌套列表
favorite_languages = {
    'jen': ['python', 'ruby'],
    'sarah': ['c'],
    'edward': ['ruby', 'go'],
    'phil': ['python', 'haskell'],
}
for name, languages in favorite_languages.items():
    print("\n" + name.title() + "'s favorite languages are:")
    for language in languages:
        print("\t&#
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值