zoukankan      html  css  js  c++  java
  • 1 python基础

    一、变量和list

    1、定义一个变量,并赋值。

    days_1 = 365
    days_2 = 366
    
    #修改变量值
    number_of_days = 365
    print(number_of_days)   # 365
    number_of_days = 366
    print(number_of_days)  # 366
    
    #打印
    #print
    print(365)       # 365
    print("hello")   # hello
    • 1.1 数值型变量有float和integer两种
    • 1.2 非数值型变量通常为string
    str_test = "China"
    int_test = 123
    float_test = 122.5
    
    print(str_test)  # China
    print(int_test)  # 123
    print(float_test) # 122.5
    print(type(str_test))     # <class 'str'>
    print(type(int_test))     # <class 'int'>
    print(type(float_test))  # <class 'float'>

    2、类型转换函数

      str()    、  float()     、 int()

    查看变量的数据类型,函数:type()

    str_eight = str(8)
    #str_eight + 10  # 异常:TypeError: can only concatenate str (not "int") to str
    print(type(str_eight))        # <class 'str'>
    print(type(float(str_eight))) # <class 'float'>
    print(type(int(str_eight)))   # <class 'int'>
    print(str_eight + 'a')        # 8a
    
    print('---------')
    
    eight = 8
    str_eight_two = str(eight)
    print(type(eight))           # <class 'int'>
    print(type(str_eight_two))   # <class 'str'>

    二、注释

    单行注释、多行注释

    #单行注释
    #print test
    
    
    # 多行注释
    """
    Addition:+
    Subtraction:-
    Multiplication:*
    Division:/
    Exponent:**
    """

    三、数值运算

    china=10
    united_states=100
    china_plus_10 = china + 10
    us_times_100 = united_states * 100
    print(china_plus_10)
    print(us_times_100)
    print(china**2)  # 平方**

    四、list类型变量

    1、定义一个list类型变量

    #LIST
    months = []
    print(type(months))  # <class 'list'>
    print(months)        # []
    
    months.append("January")
    months.append("February")
    print(months)        # ['January', 'February']
    # 定义一个list,然后进行赋值
    months = []
    months.append(1)
    months.append("January")
    months.append(2)
    months.append("February")
    print(months)        # [1, 'January', 2, 'February']
    #定义并初始化list变量
    temps = ["China",122.5,"India",124.0,"United States",134.1]
    print(type(temps))  # <class 'list'>
    print(temps)        # ['China', 122.5, 'India', 124.0, 'United States', 134.1]
    # 获取list的某一elem元素
    print(temps[1])     # 122.5
    print(temps[2])     # India

    2、长度函数: len()

    int_months = [1,2,3,4,5,6,7,8,9,10,11,12]
    lenght = len(int_months) #Contains the integer value 12
    print(lenght)    # 12
    int_months = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]
    index = len(int_months) - 1     # 11
    # 通过索引寻址
    last_value = int_months[index]  # 12
    print(last_value)               # 12
    # 通过-1索引寻找队列最后一个值
    print(int_months[-1])           # 12

    3、list切片,分段,子集

    有头无尾:指定开始索引,不指定结束索引

    # 切片
    months = ["Jan","Feb","Mar","Apr","May","Jun","Jul"]
    #指定起止索引。Values at index 2,3, but not 4.  前闭后开区间
    two_four = months[2:4]
    print(two_four)      # ['Mar', 'Apr']
    
    
    # 指定开始索引,不指定结束索引
    three_six = months[3:]
    print(three_six)        # ['Apr', 'May', 'Jun', 'Jul']

    无头有尾:不指定开始位置,指定结束位置

    # 不指定开始位置,指定结束位置
    f = open('dq_unisex_names.csv','r')  # open()函数操作文件
    names = f.read()                     # 读取文件内容
    names_list = names.split('
    ')       # 将文件内容按换行符切分得到一个names_list
    first_five = names_list[:5]  # 等于names_list[0:5]
    print(first_five)  # ['Casey,176544.3281', 'Riley,154860.6652', 'Jessie,136381.8307', 'Jackie,132928.7887', 'Avery,121797.4195']
    转换为二维列表
    # 转换为二维列表
    f = open('dq_unisex_names.csv', 'r')
    names = f.read()
    names_list = names.split('
    ')
    nested_list = []
    for line in names_list:
        comma_list = line.split(',')
        nested_list.append(comma_list)
    print(nested_list[0:5])    #  [['Casey', '176544.3281'], ['Riley', '154860.6652'], ['Jessie', '136381.8307'], ['Jackie', '132928.7887'], ['Avery', '121797.4195']]

    将数值转换为float类型,遍历实现

    nested_list = [['Casey', '176544.3281'], ['Riley', '154860.6652'], ['Jessie', '136381.8307'], ['Jackie', '132928.7887'], ['Avery', '121797.4195']]
    numerical_list = []
    for line in nested_list:
        name = line[0]    # line是一个list
        count = float(line[1])
        num_list = [name, count]
        numerical_list.append(num_list)
        
    print(numerical_list)  # [['Casey', 176544.3281], ['Riley', 154860.6652], ['Jessie', 136381.8307], ['Jackie', 132928.7887], ['Avery', 121797.4195]]

    list函数,append() 将子元素添加到list

    从文件中读取不同日期的天气数据到list列表

    # 从文件中读取不同日期的天气数据到list列表
    
    weather_data = []
    f = open("la_weather.csv",'r')
    data = f.read()
    rows = data.split('
    ')
    # print(rows)
    for row in rows:
        split_row = row.split(',')
        weather_data.append(split_row)
    print(weather_data)  # [['1', 'Sunny'], ['2', 'Sunny'], ['3', 'Sunny'], ['4', 'Sunny'], ['5', 'Sunny'], ['6', 'Rain'], ['7', 'Sunny'], ['8', 'Sunny'], ['9', 'Fog'], ['10', 'Rain']]

    读出天气数据到weather列表

    # 读出天气数据到weather列表
    weather = []
    for row in weather_data:
        weather.append(row[1])
    print(weather) # ['Sunny', 'Sunny', 'Sunny', 'Sunny', 'Sunny', 'Rain', 'Sunny', 'Sunny', 'Fog', 'Rain']
    f.close()

    判断list中是否包含'cat' : 'cat'   in   xx

    # 列表中寻找值
    animals = ['cat','dog','rabbit']
    for animal in animals:
        if animal == 'cat':
            print('Cat found')
          
    # in 语句,判断是否在列表  
    cat_found = 'cat' in animals
    print(cat_found)

    4、读取文件,切分str得到list

    4.1 文件操作函数:open("file","op")

    # 读文件
    f = open("test.txt","r")
    
    g = f.read()
    print(g)
    
    f.close()
    # 写文件
    f = open("test_write.txt","w")
    
    f.write("123456")
    f.write("
    ")
    f.write("234567")
    
    f.close()
    # 切分string得到list.
    str_ex = "john,plastic,joe"
    split_list = str_ex.split(',')
    print(split_list)        # ['john', 'plastic', 'joe']
    
    string_two = "How much wood
    can a woodchuck chuck
    if a woodchuck
    could chuck wood?"
    list_2 = string_two.split('
    ')
    print(string_two)
    print(list_2) # ['How much wood', 'can a woodchuck chuck', 'if a woodchuck', 'could chuck wood?']
    4.2 读文件内容,得到string,split()函数切分string得到list
    # 读文件内容,得到string,split()函数切分string得到list
    f = open('test.txt','r')
    data = f.read()
    rows = data.split('
    ')
    print(rows)  # ['hello python', 'tangyudi 123', 'ML 456', 'DL 789', 'data 234']

    4.3 遍历 list  :  for  in

    # loop LIST:  for  in
    cities = ["Austin", "Dallas", "Houston"]
    for city in cities:
        print(city)
    print("123")
    Austin
    Dallas
    Houston
    123

    4.4 遍历list: while
    # loop  define:  while
    cities = ["Austin", "Dallas", "Houston"]
    i = 0
    while i < len(cities):
        print(cities[i])
        i += 1
        
    Austin
    Dallas
    Houston

     4.5 range(n)   、  range(start,end,step)

    rg = range(15)
    print(rg)
    for i in rg:
        print(i)
        
    
    # 设置起止和步长
    rg2 = range(0,20,5)
    print(rg2)
    for i in rg2:
        print(i)

    4.6 嵌套list的遍历

    cities = [["Austin","Dallas","Houston"],['Haerbin','Shanghai','Beijing']]
    print(cities)
    for lst in cities:
        for city in lst:
            print(city)
    [['Austin', 'Dallas', 'Houston'], ['Haerbin', 'Shanghai', 'Beijing']]
    Austin
    Dallas
    Houston
    Haerbin
    Shanghai
    Beijing

    五、布尔类型

    # Booleans
    cat = True
    dog = False
    print(type(cat))   # <class 'bool'>
    print(dog)         # False
    print(8 == 8) # True
    print(8 != 8) # False
    print(8 == 10) # False
    print(8 != 10) # True
    
    print("abc" == 'abc') # True
    print(["January","February"] == ["January","February"]) # True
    print(5.0 == 5.0) # True

    true等于1,false等于0

    rates = [10, 15, 20]
    
    print(rates[0] > rates[1]) # False
    print(rates[0] >= rates[0]) # True
    print(False == 0)  # True
    print(True == 1)   # True
    print(True == 3)   # False
    print(True == 'a') # False

    在 if 语句中,非0都为true

    # If Statements
    sample_rate = 700
    greater = (sample_rate > 5)
    if 'a':  # if条件中,值非0则为True
        print(sample_rate)
    else:
        print("less then")
    700
    t = True
    f = ''
    
    if t:
        print("Now you see me")
    
    if f: 
        print("Now you don't")
    Now you see me
    Now you don't

    六、dict 字典类型

    用于存储键值对,比如,学生成绩。

    定义一个字典,变量={ }。赋值新增一个元素,变量['元素名']=值。

    scores = {}  #定义一个scores字典
    print(type(scores))     # <class 'dict'>
    scores["Jim"] = 80      # 新增“Jim”的成绩80
    scores["Sue"] = 85
    scores["Ann"] = 75
    print(scores.keys())    # dict_keys(['Jim', 'Sue', 'Ann'])   获取字典的所有key
    print(scores.values())  # dict_values([80, 85, 75])          获取字典的所有value
    print(scores)           # {'Jim': 80, 'Sue': 85, 'Ann': 75}
    print(scores["Sue"])    # 85
    # 初始化
    # 方式1
    students = {}
    students["Tom"] = 60
    students["Jim"] = 70
    print(students)   # {'Tom': 60, 'Jim': 70}
    
    # 方式2
    students = {"Tom":60, "Jim":70}
    print(students)   # {'Tom': 60, 'Jim': 70}

    字典对象的增删改查

    # 增删改查
    students = {
        "Tom": 60,
        "Jim": 70
    }
    #
    students["Ketty"] = 80
    print(students)  #
    
    #
    students["Tom"] = 65
    print(students['Tom']) #
    students['Tom'] += 5   #
    print(students)        # 查 {'Tom': 70, 'Jim': 70, 'Ketty': 80}
    # 更新 update
    students.update({"mogen":77, "Tom":60})  # 新增mogen,修改Tom
    print(students)        #  {'Tom': 60, 'Jim': 70, 'Ketty': 80, 'mogen': 77}
    
    #
    del students['Tom']    #
    print(students)        # {'Jim': 70, 'Ketty': 80, 'mogen': 77}
    # 清空
    students.clear()
    print(students)        # {}

    判断字典是否包含对象: in语句# 遍历,字典

    # 判断字典中是否包含对象
    students = {
        "Tom": 60,
        "Jim": 70
    }
    print("mogen" in students)  # False
    print('Jim' in students)    # True
    
    
    # 遍历
    # 统计单词出现次数
    pantry = ["apple", "orange", "grape", "apple", "orange", "apple", "tomato", "potato", "grape"] pantry_counts = {} for item in pantry: if item in pantry_counts: pantry_counts[item] += 1 else: pantry_counts[item] = 1 print(pantry_counts) # {'apple': 3, 'orange': 2, 'grape': 2, 'tomato': 1, 'potato': 1}

     七、函数

    定义一个函数:无参数,无返回值

     函数
    # 无参数,无返回值
    def firFun():
        print("hello python")

    无参数,有返回None

    # 无参数,有返回None
    def numFun():
        for i in range(0, 10):
            i
        return

    有参数,有返回值

    # 有参数,有返回值
    def add(a, b):
        return a+b

    ---------------------------

    print(firFun())
    hello python
    None
    print(numFun())   # None
    print(add(3, 5))  # 8
  • 相关阅读:
    .NET Interop 工具集
    关于正弦波的算法
    Windows Phone 系列 本地数据存储
    Xaml cannot create an instance of “X”
    Windows Phone 系列 使用 MVVM绑定时无法获取当前值
    Windows Phone 系列 应用程序图标无法显示
    Windows Phone 系列 WPConnect无法上网的问题
    Windows Phone 系列 使用 Windows Phone 保存铃声任务
    WP7.5提交应用
    Windows Phone 系列 动态删除ObservableCollection
  • 原文地址:https://www.cnblogs.com/LIAOBO/p/15324128.html
Copyright © 2011-2022 走看看