字符串
变量命名规则
变量名只能包含字母、 数字和下划线。 变量名可以字母或下划线打头, 但不能以数字打头, 例如, 可将变量命名为message_1, 但不能将其命名为1_message。
变量名不能包含空格, 但可使用下划线来分隔其中的单词。 例如, 变量名greeting_message可行, 但变量名greeting message会引发错误。
不要将Python关键字和函数名用作变量名, 即不要使用Python保留用于特殊用途的单词, 如print (请参见附录A.4) 。
变量名应既简短又具有描述性。 例如, name比n好, student_name比s_n好, name_length比length_of_persons_name好。
慎用小写字母l和大写字母O, 因为它们可能被人错看成数字1和0
修改字符串大小写
name="ada lovelace"
print(name.upper())
print(name.title())
print(name.lower())
字符串拼接
修改字符串大小写
使用+号拼接即可
name="hello"
name2="world"
print(name+name2)
rstrip删除末尾空白
language = 'python '
print(language)
print(language.rstrip())
lstrip删除开头空白
language = 'python '
print(language)
print(language.lstrip())
strip删除两端空白
language = ' python '
print(language)
print(language.strip())
数字转字符串 str()
age=23
print("age="+str(age))
列表
list = ['trek','cannondale','redline','special']
print(list)
访问元素
print(list[0])
添加元素
list.append("add");
print(list[-1])
插入数据
list.append(1,"insert")
print(list[1])
删除元素
del list[0]
print(list[0])
pop删除并返回栈顶数据
print(list.pop())
根据值删除
print(list.remove("insert"))
sort排序(字母排序)
cars = ['bmw','toyota','ben']
cars.sort();
print(cars)
sort排序(反字母排序)
cars = ['bmw','toyota','ben']
cars.sort(reverse=True);
print(cars)
sorted排序(不改变列表原来的顺序)
print(cars.sorted());
print(cars);
reverse 列表反转
cars = ['bmw','toyota','ben']
cars.reverse();
print(cars)
len 列表长度
print(cars.len())
列表遍历
magicians = ['alice', 'david', 'carolina']
for magician in magicians:
print(magician)
range() 生成范围内数值列表
for value in range(1,5):
print(value)
numbers = list(range(1,5))
for value in numbers:
print(value)
min,max,sum
min(list)
max(list)
sum(list)
列表切片
players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[0:3])
print(players[:3])
print(players[2:])
复制列表
players = ['charles', 'martina', 'michael', 'florence', 'eli']
copyPlayers = players[:]
元组
元组中值固定不能修改,初始化时使用括号
dimensions = (200, 50)
print(dimensions[0])
print(dimensions[1])
元组遍历
dimensions = (200, 50)
for dimension in dimensions:
print(dimension)
输入
message = input("please write your name")
print(message);
输入整数
age = int("how old")
print(age)
求模
两数相除返回余数
>>>4%3
1
>>>5%3
2
while循环
current_number = 1
while current_number <= 5:
print(current_number)
current_number += 1
prompt = "\nTell me something, and I will repeat it back to you:"
prompt += "\nEnter 'quit' to end the program. "
active = True
while active:
message = input(prompt)
if message == 'quit':
active = False
else:
print(message)
prompt = "\nPlease enter the name of a city you have visited:"
prompt += "\n(Enter 'quit' when you are finished.) "
while True:
city = input(prompt)
if city == 'quit':
break
else:
print("I'd love to go to " + city.title() + "!")
current_number = 0
while current_number < 10:
current_number += 1
if current_number % 2 == 0:
continue
print(current_number)
列表遍历
# 首先, 创建一个待验证用户列表
# 和一个用于存储已验证用户的空列表
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("\nThe following users have been confirmed:")
for confirmed_user in confirmed_users:
print(confirmed_user.title())
函数
def greet_user(username):
"""显示简单的问候语"""
print("Hello, " + username.title() + "!")
greet_user('jesse')
def describe_pet(pet_name, animal_type='dog'):
"""显示宠物的信息"""
print("\nI have a " + animal_type + ".")
print("My " + animal_type + "'s name is " + pet_name.title() + ".")
describe_pet(pet_name='willie'
def get_formatted_name(first_name, last_name):
"""返回整洁的姓名"""
full_name = first_name + ' ' + last_name
return full_name.title()
musician = get_formatted_name('jimi', 'hendrix')
print(musician)
传入任意数量参数的函数
def make_pizza(*toppings):
"""打印顾客点的所有配料"""
print(toppings)
make_pizza('pepperoni')
make_pizza('mushrooms', 'green peppers', 'extra cheese')
类
创建类
class Dog():
"""一次模拟小狗的简单尝试"""
def __init__(self, name, age):
"""初始化属性name和age"""
self.name = name
self.age = age
def sit(self):
"""模拟小狗被命令时蹲下"""
print(self.name.title() + " is now sitting.")
def roll_over(self):
"""模拟小狗被命令时打滚"""
print(self.name.title() + " rolled over!")
使用子类
class Car():
"""一次模拟汽车的简单尝试"""
def __init__(self, make, model, year):
self.make = make
self.model = model
self.year = year
self.odometer_reading = 0
def get_descriptive_name(self):
long_name = str(self.year) + ' ' + self.make + ' ' + self.modelreturn long_name.title()
def read_odometer(self):
print("This car has " + str(self.odometer_reading) + " miles on it.")
def update_odometer(self, mileage):
if mileage >= self.odometer_reading:
self.odometer_reading = mileage
else:
print("You can't roll back an odometer!")
def increment_odometer(self, miles):
self.odometer_reading += miles
class ElectricCar(Car):
"""电动汽车的独特之处"""
def __init__(self, make, model, year):
"""初始化父类的属性"""
super().__init__(make, model, year)
my_tesla = ElectricCar('tesla', 'model s', 2016)
print(my_tesla.get_descriptive_name())
导入类
class Battery():
"""一次模拟电动汽车电瓶的简单尝试"""
def __init__(self, battery_size=60):
"""初始化电瓶的属性"""
self.battery_size = battery_size
def describe_battery(self):
"""打印一条描述电瓶容量的消息"""
print("This car has a " + str(self.battery_size) + "-kWh battery.")
def get_range(self):
"""打印一条描述电瓶续航里程的消息"""
if self.battery_size == 70:
range = 240
elif self.battery_size == 85:
range = 270
message = "This car can go approximately " + str(range)
message += " miles on a full charge."
print(message)
class ElectricCar(Car):
"""模拟电动汽车的独特之处"""
def __init__(self, make, model, year):
"""
初始化父类的属性, 再初始化电动汽车特有的属性
"""
super().__init__(make, model, year)
self.battery = Battery()