前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >第一个Python程序(基础语法)

第一个Python程序(基础语法)

原创
作者头像
江小白
修改2019-06-10 16:44:17
6620
修改2019-06-10 16:44:17
举报
文章被收录于专栏:左瞅瞅,右瞅瞅

jupyter 工具的简单使用:

jupyter 默认使用8888 的端口 通过web 访问即可

第一个python  程序
第一个python 程序

Python 基础语法:(正题开始...)

代码语言:javascript
复制
  注释—— # 标注的文本   
  数字 
       整数,不区分long和int 
           进制0xa、0o10、0b10 
           bool,2个值True、False 
    浮点数 
      1.2、3.1415、-0.12,1.46e9等价于1.46*109 
      复数,1+2j 
    字符串 
        使用 ' " 单双引号引用的字符的序列 
        '''和""" 单双三引号,可以跨行、可以在其中自由的使用单双引号 
       在字符串前面加上r或者R前缀,表示该字符串不做特殊的处理
 转义序列 
    \\ \t    \r    \n    \'    \" 
    前缀r,把里面的所有字符当普通字符对待 
缩进 
    未使用C等语言的花括号,而是采用缩进的方式表示层次关系 
   约定使用4个空格缩进 
续行 
  在行尾使用 \ 
   如果使用各种括号,认为括号内是一个整体,内部跨行不用 \
   。
   。
   。
   (好烦,记不住)

实践中学习...

几个简单函数的使用:

代码语言:javascript
复制
    input 函数获取键盘输入 
    print  打印
    range 

shell基础的简单代码移植:

  • 输入2个数字,输出最大数
代码语言:javascript
复制
a = int(input('>>>'))
b = int(input('>>>'))
if a > b:
    print(a)
else:
    print(b)
#  注意input  输入的为字符串,要与0 进行比较,注意类型转换
  • 给定一个不超过5位的正整数,判断其有几位
代码语言:javascript
复制
a = int(input('>>>'))
if a < 10:
    print('1')
elif a < 100:
    print('2')
elif a < 1000:
    print('3')
elif a < 10000:
    print('4')
elif a < 100000:
    print('5')
#多分支结构的简单使用
代码语言:javascript
复制
a = int(input('>>>'))
if a < 1000:
    if a < 10:
        print('1')
    elif a < 100:
        print('2')
    else:
        print('3')
else:
    if a < 10000:
        print('4')
    else:
        print('5')
# 小代码,新玩法,简单二分法的应用,是不是效率会提高点
  • 给定一个不超过5位的正整数,判断该数的位数,依次打印出个位、十位、百位、千位、万位的数字
代码语言:javascript
复制
a = int(input('>>>'))
if a < 1000:
    if a < 10:
        num = 1
    elif a < 100:
        num = 2
    else:
        num = 3
else:
    if a < 10000:
        num = 4
    else:
        num = 5
print(num)
c = a
for i in range(num):
    n = c//10
    print(c-n*10)
    c = n
# 你以为的你以为?,注意变量的赋值
python 为弱类型语言,变量的覆盖,加以使用
  • 给定一个不超过5位的正整数,判断该数的位数,依次从万位打印到个位的数
代码语言:javascript
复制
a = int(input('>>>'))
if a < 1000:
    if a < 10:
        num = 1
    elif a < 100:
        num = 2
    else:
        num = 3
else:
    if a < 10000:
        num = 4
    else:
        num = 5
print(num)
c = 0
for i in range(num,0,-1):
    n = a//(10**(i-1))
    print(n-c*10)
    c = n

代码语言:javascript
复制
int()
只取整数部分
round()
四舍六入五取偶
//
整除向下取整

math 模块:

floor 向下取整,ceil 向上取整(注意负号,负数的使用)

类型判断

代码语言:javascript
复制
type()                     返回对象类型
isinstance()               返回布尔值        

列表list

代码语言:javascript
复制
一个队列,一个排列整齐的队伍 
 列表内的个体称作元素,由若干元素组成列表 
元素可以是任意对象(数字、字符串、对象、列表等) 
列表内元素有顺序,可以使用索引 
线性的数据结构 
使用 [ ] 表示
列表是可变的

列表list定义 初始化

代码语言:javascript
复制
lst = list() 
lst = [] 
lst = [2, 6, 9, 'ab'] 
lst = list(range(5))
代码语言:javascript
复制
#  求一百以内的质素
n = 100
primenumber = []
for x in range(2,n):
    for i in primenumber:
        if x%i == 0:
            break
    else:
        primenumber.append(x)
print(primenumber)

元组tuple

代码语言:javascript
复制
 一个有序的元素组成的集合 
 使用小括号 ( ) 表示
 元组是不可变对象

冒泡法代码实现

代码语言:javascript
复制
nums = [9,8,7,6,5,4,3,2,1]
length = len(nums)
for i in range(length):
    for j in range(length-i-1):
        if nums[j] > nums[j+1]:
            nums[j],nums[j+1] = nums[j+1],nums[j]
print(nums)

字符串

代码语言:javascript
复制
一个个字符组成的有序的序列,是字符的集合 
使用单引号、双引号、三引号引住的字符序列
字符串是不可变对象

不对原列表进行修改
不对原列表进行修改
partition 与 split 区别
partition 与 split 区别

bytes、bytearray

代码语言:javascript
复制
bytes   不可变字节序列 
bytearray  字节数组  可变

切片

代码语言:javascript
复制
通过索引区间访问线性结构的一段数据 
sequence[start:stop]  表示返回[start, stop)区间的子序列 
支持负索引 
start为0,可以省略 p stop为末尾,可以省略 
超过上界(右边界),就取到末尾;超过下界(左边界),取到开头 
start一定要在stop的左边
 [:] 表示从头至尾,全部元素被取出,等效于copy()方法

封装和解构

代码语言:javascript
复制
lst = [1,(2,3,4),5]
a,(b,c,d),e = lst
print(a,b,c,d)
# 不仅可以使用索引

_,[*_,val],*_ = lst
print(val)
_,(*_,val),*_ = lst
print(val)

key, _ , val = "JAVA_HOME=/usr/bin".partition('=') 
print(key) 
print(val
key,val =  "JAVA_HOME=/usr/bin".split('=') 
print(key)
print(val)

集set

代码语言:javascript
复制
可变的、无序的、不重复的元素的集合
set的元素要求必须可以hash 
目前学过的不可hash的类型有list、set 
元素不可以索引 
set可以迭代

字典dict

代码语言:javascript
复制
key-value键值对的数据的集合 
可变的、无序的、key不重复

d = dict(a=1,b=2,c='abc')
keys = []
for k,v in d.items():
    if isinstance(v,str):
        keys.append(k)
for k in keys:
    d.pop(k)
print(d)

#字典的删除

列表解析式

代码语言:javascript
复制
[x**2 for x in range(1,11)]
# 下面for 循环的简单写法
代码语言:javascript
复制
d = []
for x in range(1,11):
    d.append(x**2)
print(d)
代码语言:javascript
复制
列表解析式简单应用:
相邻两项求和
lst = [1,4,9,16,2,5,10,15]
[lst[i] + lst[i+1] for i in range(len(lst)-1)]

打印九九乘法表
[print('{}*{}={:2}{}'.format(j,i,i*j,'\n' if i == j else ''),end="") for i in range(1,10) for j in range(1,i+1)]

[print('{}*{}={:2}{}'.format(j,i,i*j,'\n' if i == j else ''),end="") for i in range(1,10) for j in range(1,i+1)]

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • jupyter 工具的简单使用:
  • Python 基础语法:(正题开始...)
  • 实践中学习...
  • shell基础的简单代码移植:
    • math 模块:
      • 类型判断
      • 列表list
        • 列表list定义 初始化
          • 元组tuple
            • 冒泡法代码实现
              • 字符串
                • bytes、bytearray
                  • 切片
                    • 封装和解构
                      • 集set
                        • 字典dict
                          • 列表解析式
                          领券
                          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档