python-01

作者 : admin 本文共5177个字,预计阅读时间需要13分钟 发布时间: 2024-06-10 共2人阅读

第一个程序 

import random

computer = random.randint(1, 3)
print('电脑出的是:', computer)
i = int(input('你要出什么?1代表石头,2代表剪刀,3代表布
'))
if i ==computer:
    print('平局')
elif (computer == 1 and i == 3) or (computer == 2 and i == 1) or (computer == 3 and i == 2):
    print('你赢了')
else:
    print('你输了')
print(computer, '---', i)

python-01插图

1. 注释,#单行注释;”””……””” 和 ”’……”’多行注释;

2. 标识符,第一个字符必须是字母或下划线;剩下的可以是字母、数字、下划线;大小写区分;

3. 关键字,Python系统保留的标识符,只有Python系统可以使用;import keyword,keyword.kwlist 查看所有关键字;

 4. 变量,程序执行过程中可以发生变化的量。常量一旦被初始化就不可以再改变;

5. 输入和输出,输入:input() 当用户输入程序所需要的数据时,就会以字符串的形式返回;输出:print(value, sep=’ ‘, end=’
‘);

sep:多个输出信息之间的分隔符,默认一个空格;

end:所有输出信息之后添加的符号,默认换行符;

print同时使用多个字符串:

print('The quick', 'brown fox', 'jumps over')

>>>The quick brown fox jumps over

遇到逗号“,”时就会输出一个空格。

 字符串

'abc"dd"ef'
"'acc'd'12"

当字符串内含有单引号时,如果用单引号字符串,就会导致无法区分字符串内的单引号与字符串标志的单引号,就要使用转义字符串;如果用双引号字符串,则在字符串中直接书写单引号即可。

三引号字符串可以由多行组成;

'abcde'[1]
var='斗破苍穹x的点击量是'
var="10000000"
print(var1[0:8])
print(var2[0:7])

var1='Hello 斗破苍X!'
print("最初的名字是:", var1)
print('修改为:', var1[0:6] + '蜀山X!')

python-01插图(1)

常用转义字符:\(在行尾时)续行符;\ 反斜杠符号;\’ 单引号;
换行; 横向制表符;\r 回车;\f  换页;

不想让转义字符生效 ,这事就要用r和R来定义原始字符串 。

如果想在字符串中输出反斜杠“\” ,就要使用”\  \”来实现。

print('听话
聪明')  # 普通换行
print("爱劳动\漂亮")  # 显示一个反斜杠
print("女汉子\'热情\'")  # 显示单引号
print(r"	\r")  #r的功能是显示原始数据,也就是不用转义

python-01插图(2)

格式化符号:

%c 格式化字符及其ASCII码;

%s 格式化字符串;

%d格式化整数;

%u格式化无符号整数;

%o格式化无符号八进制数;

%x格式化无符号十六进制数;

%X格式化无符号十六进制数;

%f格式化浮点数字,可指定小数点后的精度;

%e用科学计数法格式化浮点数;

%E用科学计数法格式化浮点数;

print("天赋异禀的少年武者%s,今年已经%d岁了!" % ('萧炎', 18))

python-01插图(3)

数字类型

类型转换函数:

int( ) , float( ), complex()

str(x) 转换为字符串

repr(x)转换为表达式字符串

eval(str) 计算在字符串中的有效Python表达式,并返回一个对象

tuple(s)将序列s转换为一个元组

list(s)将序列s转换为一个列表

set(s)转换为可变集合

dict(d)创建一个字典。d必须是一个序列(key, value)元组

frozenset(s)转换为不可变集合

chr(x)将一个整数转换为一个字符

unichr(x)将一个整数转换为Unicode字符

ord(x)将一个字符转换为它的整数值

hex(x)将一个整数转换为一个十六进制字符串

oct(x)将一个整数转换为一个八进制字符串

运算符和表达式

算术运算符:+,-,*,/,%,**,//

比较运算符:==,!=,>, =, <=

赋值运算符:=, +=, -=, *=, /=, %=, **=, //=

位运算符:&按位与,|按位或,^按位异或,~按位取反,<>右移动

逻辑运算符:and 与, or 或, not 非

列表

list1 = ['同学A', '同学B', 2001, 2002]
print('名字:',list1[0])   # 输出列表中第一个元素
print('出生年份', list1[2:3]) # 输出列表中第三个元素

python-01插图(4)

car = ['手机','牛肉','衣服','运动鞋']
print(car)
car.insert(0, '雪糕')
print(car)
del car[0]
print(car)

python-01插图(5)

list.insert(index, obj)

在列表的任意位置添加新元素,index插入的索引位置,obj将要插入列表中的元素;

del 删除元素

元组

元组内的数据元素不能发生改变。

tup1 = (12001, 94.56)
tup2 = ('三年级','小菜')
tup3 = tup1 + tup2 # 对元组进行连接组合
print(tup3)
del tup1 # 删除元组tup1

python-01插图(6)

car = ['奥迪','宝马','奔驰','雷克萨斯']
print(len(car))  # 列表的长度
tuple2 = ('5000','4000','8000')
print('最畅销产品的销量是', max(tuple2))  # 元组中元素的最大值
tuple3 = ('5000','4000','8000')
print('最不畅销产品的销量是', min(tuple3))  # 元组中元素的最小值
list1 = ['京东','淘宝','天猫','拼多多']
tuple1 = tuple(list1)  # 将列表的值赋值给元组
print('最受欢迎的电商平台是', tuple1)

python-01插图(7)

 len(tuple)计算元组元素的个数

max(tuple)返回元组中元素的最大值

min(tuple)返回元组中元素的最小值

字典

字典中的每个成员都是以“键:值”对的形式成对存在。

字典是无序的,在字典中通过键来访问成员。

每个key:value中的键(key)必须是唯一的、不可变的,但值(value)可以不唯一。

dict = {'Name':'同学A','Age':19,'Class':'外语'}
dict['Age'] = 20  #更新Age的值
dict['School'] = "山东大学" # 添加新的键值
print("dict['Age']:", dict["Age"])
print("dict['School']:", dict["School"])
print(dict)
del dict['Name']  # 删除键Name
print(dict)

python-01插图(8)

favorite_launguages = {
    'python':'1',
    'C':'2',
    'Ruby':'3',
    'Java':'4'
}
print('下面是某人简历中擅长的编程语言:')
x = favorite_launguages.keys()
print(x)

python-01插图(9)

dict.keys(),以列表的形式返回字典中所有的键。

条件语句

在多个代码语句中选择执行其中一行。

x = input('请输入你所能承受的车票价格(整数):')
x= int(x)
if x<0:  # 如果x小于0
    x = -x # 如果小于0,将x取负数
print(x)

python-01插图(10)

A = 6999
B = 7999
if A>B:  # 如果A大于B
    print('商品A的价格要高一些')
else:   # 如果A不大于B
    print('商品B的价格要高一些')

python-01插图(11)

for循环

for iterating_var in sequence:

        statements

iterating_var表示循环变量

sequence遍历对象,通常是元组、列表和字典等

statements表示执行语句

import time
num_list = [1,2,3,4,5,6]
for i in num_list:
    print(i)
    time.sleep(1)    # 暂停1秒

python-01插图(12)

x = (int(input('请输入一个整数作为开始:')), int(input('请输入一个整数作为结尾:')))
x1 = min(x)
x2 = max(x)
for n in range(x1, x2+1):
    for i in range(2, n-1):
        if n % i == 0:
            break
    else:
        print('你输入的', n, '是素数。')

python-01插图(13)

for…..else语句中,else中的语句会在循环执行完(即for不是通过break跳出而中断的)的情况下执行。

while循环

while condition

        statements

当condition为真时,将循环执行后面的语句,一直到条件为假时退出循环。

print('国庆假期的安排:')
count = 1
while count <=7:
    print('假期第', count,'天:去XX玩')
    count+=1
print('假期结束!')

python-01插图(14)

while……else

若while循环不是由break语句终止,则会执行else语句块中的语句。

count = 0
while count<2:
    print('你已经看电脑',count,'小时')
    count +=1
else:
    print('你已经连续看电脑', count, '小时了,停下来,休息一下!')

python-01插图(15)

函数

def tpl_sum(T):
    result = 0
    for i in T:
        result += i
    return result

print('快递1的重量为:', tpl_sum([1,2,3,4]),'千克')

python-01插图(16)

def printinfo(name, age=19):
    print('名字:', name)
    print('年龄:', age)
    return

printinfo(age = 20, name='小白')
printinfo(name = 'Python大神')

 python-01插图(17)

def fun_bmi_upgrade(*person):
    """
    :param person:可变参数,该参数中需要传递带3个元素的列表,分别为姓名,身高,体重
    :return:
    """
    for list_person in person:
        for item in list_person:
            person = item[0]
            height = item[1]
            weight = item[2]
            print("
" + '='*13, person, '='*13)
            print('身高:'+str(height)+"米	体重:"+str(weight)+"千克")
            bmi = weight/(height*height)
            print("BMI指数:"+str(bmi))
            if bmi =18.5 and bmi=24 and bmi=27 and bmi30:
                print('重度肥胖')

# 函数调用
list_w = [('张三',1.70, 65),('李四',1.77,50),('王五',1.72,66)]
list_m = [('小王',1.80, 75),('小友',1.75,110)]
fun_bmi_upgrade(list_w,list_m)

python-01插图(18)

如果参数名前加了一个星号*,则表示该参数是可变长参数。在调用该函数时,如果依次将所有的其他变量都赋予了值,剩下的参数将会收集在一个元组中,元组的名称就是前面带星号的参数名。

#first_day.py
def fun():
    profit = 0
    I = int(input('请输入利润(单位:万元):'))
    if (I<=10):
        profit = 0.1*I
    elif (I<=20):
        profit = 10*0.1 + (I-10)*0.075
    elif (I<=40):
        profit = 10*0.1+(20-10)*0.075+(I-20)*0.05
    elif (I<=60):
        profit = 10*0.1+(20-10)*0.075+(40-20)*0.05+(I-40)*0.03
    elif (I<=100):
        profit = 10*0.1+(20-10)*0.075+(40-20)*0.05+(60-40)*0.03+(I-60)*0.015
    else:
        profit = 10*0.1+(20-10)*0.075+(40-20)*0.05+(60-40)*0.03+(100-60)*0.015+(I-100)*0.01

    print('你应得的奖金是:',profit,'万元')
# second_day.py
import first_day as fd
fd.fun()

 python-01插图(19)

通过import给first_day指定了别名fd,但该模块中所有函数的名称都没有变。当调用函数时使用fd.fun()。 

本站无任何商业行为
个人在线分享 » python-01
E-->